DirectShow Reference

Category: Direct Show

Date: 02-16-2022

Return to Index


 
Type VIDEO_STREAM_CONFIG_CAPS   ' Must be 8 byte aligned
   guid               As Guid      ' GUID guid
   VideoStandard      As Dword     ' ULONG VideoStandard
   InputSize          As Size      ' SIZE InputSize
   MinCroppingSize    As Size      ' SIZE MinCroppingSize
   MaxCroppingSize    As Size      ' SIZE MaxCroppingSize
   CropGranularityX   As Long      ' int CropGranularityX
   CropGranularityY   As Long      ' int CropGranularityY
   CropAlignX         As Long      ' int CropAlignX
   CropAlignY         As Long      ' int CropAlignY
   MinOutputSize      As Size      ' SIZE MinOutputSize
   MaxOutputSize      As Size      ' SIZE MaxOutputSize
   OutputGranularityX As Long      ' int OutputGranularityX
   OutputGranularityY As Long      ' int OutputGranularityY
   StretchTapsX       As Long      ' int StretchTapsX
   StretchTapsY       As Long      ' int StretchTapsY
   ShrinkTapsX        As Long      ' int ShrinkTapsX
   ShrinkTapsY        As Long      ' int ShrinkTapsY
   alignment__        As Dword
   MinFrameInterval   As Quad      ' LONGLONG MinFrameInterval
   MaxFrameInterval   As Quad      ' LONGLONG MaxFrameInterval
   MinBitsPerSecond   As Long      ' LONG MinBitsPerSecond
   MaxBitsPerSecond   As Long      ' LONG MaxBitsPerSecond
 
  HRESULT GetStreamCaps(
  int iIndex,
  AM_MEDIA_TYPE **pmt,
  BYTE *pSCC
 
Type AM_MEDIA_TYPE Dword
   majortype            As Guid       ' GUID      majortype
   subtype              As Guid       ' GUID      subtype
   bFixedSizeSamples    As Long       ' BOOL      bFixedSizeSamples
   bTemporalCompression As Long       ' BOOL      bTemporalCompression
   lSampleSize          As Dword      ' ULONG     lSampleSize
   formattype           As Guid       ' GUID      formattype
   pUnk                 As Dword Ptr  ' IUnknown  *pUnk
   cbFormat             As Dword      ' ULONG     cbFormat
   pbFormat             As Byte Ptr   ' [size_is(cbFormat)] BYTE *pbFormat
End Type
 
 
Interface ISampleGrabber $IID_ISampleGrabber
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method SetOneShot ( _                                ' VTable offset = 12
     ByVal OneShot As Long _                            ' __in BOOL OneShot
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetMediaType ( _                              ' VTable offset = 16
     ByRef pType As AM_MEDIA_TYPE _                     ' __in const AM_MEDIA_TYPE *pType
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetConnectedMediaType ( _                     ' VTable offset = 20
     ByRef pType As AM_MEDIA_TYPE _                     ' __out AM_MEDIA_TYPE *pType
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetBufferSamples ( _                          ' VTable offset = 24
     ByVal BufferThem As Long _                         ' __in BOOL BufferThem
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetCurrentBuffer ( _                          ' VTable offset = 28
     ByRef pBufferSize As Long _                        ' __in_out long *pBufferSize
   , ByRef pBuffer As Long _                            ' __out long *pBuffer
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetCurrentSample ( _                          ' VTable offset = 32
     ByRef ppSample As IMediaSample _                   ' __retval_out IMediaSample **ppSample
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetCallback ( _                               ' VTable offset = 36
     ByVal pCallback As ISampleGrabberCB _              ' __in ISampleGrabberCB *pCallback
   , ByVal WhichMethodToCallback As Long _              ' __in long WhichMethodToCallback
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
Type AM_MEDIA_TYPE Dword
   majortype            As Guid       ' GUID      majortype
   subtype              As Guid       ' GUID      subtype
   bFixedSizeSamples    As Long       ' BOOL      bFixedSizeSamples
   bTemporalCompression As Long       ' BOOL      bTemporalCompression
   lSampleSize          As Dword      ' ULONG     lSampleSize
   formattype           As Guid       ' GUID      formattype
   pUnk                 As Dword Ptr  ' IUnknown  *pUnk
   cbFormat             As Dword      ' ULONG     cbFormat
   pbFormat             As Byte Ptr   ' [size_is(cbFormat)] BYTE *pbFormat
End Type
 
 
Interface IAMCameraControl $IID_IAMCameraControl
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method GetRange ( _                                  ' VTable offset = 12
     ByVal Property As Long _                           ' __in  long Property
   , ByRef pMin As Long _                               ' __out long *pMin
   , ByRef pMax As Long _                               ' __out long *pMax
   , ByRef pSteppingDelta As Long _                     ' __out long *pSteppingDelta
   , ByRef pDefault As Long _                           ' __out long *pDefault
   , ByRef pCapsFlags As Long _                         ' __out long *pCapsFlags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Set ( _                                       ' VTable offset = 16
     ByVal Property As Long _                           ' __in  long Property
   , ByVal lValue As Long _                             ' __in  long lValue
   , ByVal Flags As Long _                              ' __in  long Flags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Get ( _                                       ' VTable offset = 20
     ByVal Property As Long _                           ' __in  long Property
   , ByRef lValue As Long _                             ' __out long *lValue
   , ByRef Flags As Long _                              ' __out long *Flags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
 
Interface IAMVideoProcAmp $IID_IAMVideoProcAmp
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method GetRange ( _                                  ' VTable offset = 12
     ByVal Property As Long _                           ' __in  long Property
   , ByRef pMin As Long _                               ' __out long *pMin
   , ByRef pMax As Long _                               ' __out long *pMax
   , ByRef pSteppingDelta As Long _                     ' __out long *pSteppingDelta
   , ByRef pDefault As Long _                           ' __out long *pDefault
   , ByRef pCapsFlags As Long _                         ' __out long *pCapsFlags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Set ( _                                       ' VTable offset = 16
     ByVal Property As Long _                           ' __in  long Property
   , ByVal lValue As Long _                             ' __in  long lValue
   , ByVal Flags As Long _                              ' __in  long Flags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Get ( _                                       ' VTable offset = 20
     ByVal Property As Long _                           ' __in  long Property
   , ByRef lValue As Long _                             ' __out long *lValue
   , ByRef Flags As Long _                              ' __out long *Flags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
 
Interface IAMStreamConfig $IID_IAMStreamConfig
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method SetFormat ( _                                 ' VTable offset = 12
     ByRef pmt As AM_MEDIA_TYPE _                       ' __in  AM_MEDIA_TYPE *pmt
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetFormat ( _                                 ' VTable offset = 16
     ByRef ppmt As AM_MEDIA_TYPE _                      ' __out AM_MEDIA_TYPE **ppmt
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetNumberOfCapabilities ( _                   ' VTable offset = 20
     ByRef piCount As Long _                            ' __out int *piCount
   , ByRef piSize As Long _                             ' __out int *piSize
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetStreamCaps ( _                             ' VTable offset = 24
     ByVal iIndex As Long _                             ' __in  int iIndex
   , ByRef ppmt As AM_MEDIA_TYPE _                      ' __out AM_MEDIA_TYPE **ppmt
   , ByVal pSCC As Byte Ptr _                           ' __out BYTE *pSCC
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
 
Interface IMoniker $IID_IMoniker
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method GetClassID ( _                                ' VTable offset = 12
     ByRef pClassID As Guid _                           ' __out CLSID * pClassID
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method IsDirty ( _                                   ' VTable offset = 16
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Load ( _                                      ' VTable offset = 20
     ByVal pStm As IStream _                            ' __in IStream * pStm
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Save ( _                                      ' VTable offset = 24
     ByVal pStm As IStream _                            ' __in IStream * pStm
   , ByVal fClearDirty As Long _                        ' __in BOOL fClearDirty
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetSizeMax ( _                                ' VTable offset = 28
     ByRef pcbSize As Quad _                            ' __out  ULARGE_INTEGER * pcbSize
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method BindToObject ( _                              ' VTable offset = 32
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal pmkToLeft As IMoniker _                      ' __in IMoniker * pmkToLeft
   , ByRef riidResult As Guid _                         ' __in REFIID riidResult
   , ByRef ppvResult As IUnknown _                      ' __out void ** ppvResult
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method BindToStorage ( _                             ' VTable offset = 36
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal pmkToLeft As IMoniker _                      ' __in IMoniker * pmkToLeft
   , ByRef riid As Guid _                               ' __in REFIID riid
   , ByRef ppvObj As IUnknown _                         ' __out void ** ppvObj
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Reduce ( _                                    ' VTable offset = 40
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal dwReduceHowFar As Dword _                    ' __in DWORD dwReduceHowFar
   , ByRef ppmkToLeft As IMoniker _                     ' __in_out IMoniker ** ppmkToLeft
   , ByRef ppmkReduced As IMoniker _                    ' __out IMoniker ** ppmkReduced
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method ComposeWith ( _                               ' VTable offset = 44
     ByVal pmkRight As IMoniker _                       ' __in IMoniker * pmkRight
   , ByVal fOnlyIfNotGeneric As Long _                  ' __in BOOL fOnlyIfNotGeneric
   , ByRef ppmkComposite As IMoniker _                  ' __out IMoniker ** ppmkComposite
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Enum ( _                                      ' VTable offset = 48
     ByVal fForward As Long _                           ' __in BOOL fForward
   , ByRef ppenumMoniker As IEnumMoniker _              ' __out IEnumMoniker ** ppenumMoniker
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method IsEqual ( _                                   ' VTable offset = 52
     ByVal pmkOtherMoniker As IMoniker _                ' __in IMoniker * pmkOtherMoniker
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Hash ( _                                      ' VTable offset = 56
     ByVal pdwHash As Dword _                           ' __out DWORD * pdwHash
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method IsRunning ( _                                 ' VTable offset = 60
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal pmkToLeft As IMoniker _                      ' __in IMoniker * pmkToLeft
   , ByVal pmkNewlyRunning As IMoniker _                ' __in IMoniker * pmkNewlyRunning
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetTimeOfLastChange ( _                       ' VTable offset = 64
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal pmkToLeft As IMoniker _                      ' __in IMoniker * pmkToLeft
   , ByRef pFileTime As FILETIME _                      ' __out FILETIME * pFileTime
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Inverse ( _                                   ' VTable offset = 68
     ByRef ppmk As IMoniker _                           ' __out IMoniker ** ppmk
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method CommonPrefixWith ( _                          ' VTable offset = 72
     ByVal pmkOther As IMoniker _                       ' __in IMoniker * pmkOther
   , ByRef ppmkPrefix As IMoniker _                     ' __out IMoniker ** ppmkPrefix
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method RelativePathTo ( _                            ' VTable offset = 76
     ByVal pmkOther As IMoniker _                       ' __in IMoniker * pmkOther
   , ByRef ppmkRelPath As IMoniker _                    ' __out IMoniker ** ppmkRelPath
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetDisplayName ( _                            ' VTable offset = 80
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal IMoniker _                                   ' __in IMoniker * pmkToLeft
   , ByRef ppszDisplayName As Dword _                   ' __out LPOLESTR * ppszDisplayName
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method ParseDisplayName ( _                          ' VTable offset = 84
     ByVal pbc As IBindCtx _                            ' __in IBindCtx * pbc
   , ByVal pmkToLeft As IMoniker _                      ' __in IMoniker * pmkToLeft
   , ByRef pszDisplayName As WStringZ _                 ' __in LPOLESTR pszDisplayName
   , ByRef pchEaten As Long _                           ' __out ULONG * pchEaten
   , ByRef ppmkOut As IMoniker _                        ' __out IMoniker ** ppmkOut
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method IsSystemMoniker ( _                           ' VTable offset = 88
     ByRef pdwMksys As Dword _                          ' __out DWORD * pdwMksys
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
Interface IMediaEventEx $IID_IMediaEventEx
 
   Inherit IDispatch
 
   ' =====================================================================================
   ' IMediaEvent Methods
   ' =====================================================================================
   Method GetEventHandle <1610743808> ( _               ' VTable offset = 28
     ByRef hEvent As Long _                             ' __out OAEVENT *hEvent
   )                                                    ' void
   ' =====================================================================================
   Method GetEvent <1610743809> ( _                     ' VTable offset = 32
     ByRef lEventCode As Long _                         ' __out long *lEventCode
   , ByRef lParam1 As Long _                            ' __out LONG_PTR *lParam1
   , ByRef lParam2 As Long _                            ' __out LONG_PTR *lParam2
   , ByVal msTimeout As Long _                          ' __in long msTimeout
   )                                                    ' void
   ' =====================================================================================
   Method WaitForCompletion <1610743810> ( _            ' VTable offset = 36
     ByVal msTimeout As Long _                          ' __in long msTimeout
   , ByRef pEvCode As Long _                            ' __out long *pEvCode
   )                                                    ' void
   ' =====================================================================================
   Method CancelDefaultHandling <1610743811> ( _        ' VTable offset = 40
     ByVal lEvCode As Long _                            ' __in long lEvCode
   )                                                    ' void
   ' =====================================================================================
   Method RestoreDefaultHandling <1610743812> ( _       ' VTable offset = 44
     ByVal lEvCode As Long _                            ' __in long lEvCode
   )                                                    ' void
   ' =====================================================================================
   Method FreeEventParams <1610743813> ( _              ' VTable offset = 48
     ByVal lEvCode As Long _                            ' __in long lEvCode
   , ByVal lParam1 As Long _                            ' __in LONG_PTR lParam1
   , ByVal lParam2 As Long _                            ' __in LONG_PTR lParam2
   )                                                    ' void
   ' =====================================================================================
 
   ' =====================================================================================
   ' IMediaEventEx Methods
   ' =====================================================================================
   Method SetNotifyWindow <1610809344> ( _              ' VTable offset = 52
     ByVal hwnd As Dword _                              ' __in OAHWND hwnd
   , ByVal lMsg As Long _                               ' __in long lMsg
   , ByVal lInstanceData As Long _                      ' __in LONG_PTR lInstanceData
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetNotifyFlags <1610809345> ( _               ' VTable offset = 56
     ByVal lNoNotifyFlags As Long _                     ' __in long lNoNotifyFlags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetNotifyFlags <1610809346> ( _               ' VTable offset = 60
     ByRef lplNoNotifyFlags As Long _                   ' __out long *lplNoNotifyFlags
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
Interface IBaseFilter $IID_IBaseFilter
 
   Inherit IUnknown
 
   ' =====================================================================================
   ' IPersist Methods
   ' =====================================================================================
   Method GetClassID ( _                                ' VTable offset = 12
     ByRef pClassID As Guid _                           ' __out CLSID * pClassID
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
   ' =====================================================================================
   ' IMediaFilter Methods
   ' =====================================================================================
   Method Stop ( _                                      ' VTable offset = 16
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Pause ( _                                     ' VTable offset = 20
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Run ( _                                       ' VTable offset = 24
     ByVal tStart As Quad _                             ' __in  REFERENCE_TIME tStart
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetState ( _                                  ' VTable offset = 28
     ByVal dwMilliSecsTimeout As Dword _                ' __in  DWORD dwMilliSecsTimeout
   , ByRef State As Dword _                             ' __out FILTER_STATE *State
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetSyncSource ( _                             ' VTable offset = 32
     Optional ByVal pClock As IReferenceClock _         ' __in_opt  IReferenceClock *pClock
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetSyncSource ( _                             ' VTable offset = 36
     ByRef pClock As IReferenceClock  _                 ' __out IReferenceClock **pClock
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
   ' =====================================================================================
   ' IBaseFilter Methods
   ' =====================================================================================
   Method EnumPins ( _                                  ' VTable offset = 40
     ByRef ppEnum As IEnumPins _                        ' __out IEnumPins **ppEnum
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method FindPin ( _                                   ' VTable offset = 44
     ByRef Id As WStringZ _                             ' __in  LPCWSTR Id
   , ByRef ppPin As IPin _                              ' __out IPin **ppPin
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method QueryFilterInfo ( _                           ' VTable offset = 48
     ByRef pInfo As FILTER_INFO _                       ' __out FILTER_INFO *pInfo
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method JoinFilterGraph ( _                           ' VTable offset = 52
     Optional ByVal pGraph As IFilterGraph _            ' __in_opt IFilterGraph *pGraph
   , Optional ByRef pName As WStringZ _                 ' __in_opt LPCWSTR pName
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method QueryVendorInfo ( _                           ' VTable offset = 56
     ByRef pVendorInfo As Dword _                       ' __out LPWSTR *pVendorInfo
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
 
Interface ICaptureGraphBuilder2 $IID_ICaptureGraphBuilder2
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method SetFiltergraph ( _                            ' VTable offset = 12
     ByVal pfg As IGraphBuilder _                       ' __in  IGraphBuilder *pfg
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method GetFiltergraph ( _                            ' VTable offset = 16
     ByRef ppfg As IGraphBuilder _                      ' __out IGraphBuilder **ppfg
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetOutputFileName ( _                         ' VTable offset = 20
     ByRef pType As Guid _                              ' __in  const GUID *pType
   , ByRef lpstrFile As WStringZ _                      ' __in  LPCOLESTR lpstrFile
   , ByRef ppf As IBaseFilter _                         ' __out IBaseFilter **ppf
   , ByRef ppSink As IFileSinkFilter _                  ' __out IFileSinkFilter **ppSink
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method FindInterface ( _                             ' VTable offset = 24
     ByRef pCategory As Guid _                          ' __in_opt  const GUID *pCategory
   , ByRef pType As Guid _                              ' __in_opt  const GUID *pType
   , ByVal pf As IBaseFilter _                          ' __in  IBaseFilter *pf
   , ByRef riid As Guid _                               ' __in  REFIID riid
   , ByRef ppint As IUnknown _                          ' __out void **ppint
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method RenderStream ( _                              ' VTable offset = 28
     ByRef pCategory As Guid _                          ' __in_opt  const GUID *pCategory
   , ByRef pType As Guid _                              ' __in  const GUID *pType
   , ByVal pSource As IUnknown _                        ' __in  IUnknown *pSource
   , ByVal pfCompressor As IBaseFilter _                ' __in  IBaseFilter *pfCompressor
   , ByVal pfRenderer As IBaseFilter _                  ' __in  IBaseFilter *pfRenderer
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method ControlStream ( _                             ' VTable offset = 32
     ByRef pCategory As Guid _                          ' __in  const GUID *pCategory
   , ByRef pType As Guid _                              ' __in  const GUID *pType
   , ByVal pFilter As IBaseFilter _                     ' __in  IBaseFilter *pFilter
   , ByRef pstart As Quad _                             ' __in_opt  REFERENCE_TIME *pstart
   , ByRef pstop As Quad _                              ' __in_opt  REFERENCE_TIME *pstop
   , ByVal wStartCookie As Word _                       ' __in  WORD wStartCookie
   , ByVal wStopCookie As Word _                        ' __in  WORD wStopCookie
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method AllocCapFile ( _                              ' VTable offset = 36
     ByRef lpstr As WStringZ _                          ' __in  LPCOLESTR lpstr
   , ByVal dwlSize As Quad _                            ' __in  DWORDLONG dwlSize
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method CopyCaptureFile ( _                           ' VTable offset = 40
     ByRef lpwstrOld As WStringZ _                      ' __in  LPOLESTR lpwstrOld
   , ByRef lpwstrNew As WStringZ _                      ' __in  LPOLESTR lpwstrNew
   , ByVal fAllowEscAbort As Long _                     ' __in  int fAllowEscAbort
   , ByVal pCallback As IAMCopyCaptureFileProgress _    ' __in  IAMCopyCaptureFileProgress *pCallback
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method FindPin ( _                                   ' VTable offset = 44
     ByVal pSource As IUnknown _                        ' __in  IUnknown *pSource
   , ByVal pindir As Dword _                            ' __in  PIN_DIRECTION pindir
   , ByRef pCategory As Guid _                          ' __in_opt  const GUID *pCategory
   , ByRef pType As Guid _                              ' __in_opt  const GUID *pType
   , ByVal fUnconnected As Long _                       ' __in  BOOL fUnconnected
   , ByVal num As Long _                                ' __in  int num
   , ByRef ppPin As IPin _                              ' __out IPin **ppPin
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
Interface IGraphBuilder $IID_IGraphBuilder
 
   Inherit IUnknown
 
   ' =====================================================================================
   Method AddFilter ( _                                 ' VTable offset = 12
     ByVal pFilter As IBaseFilter _                     ' __in  IBaseFilter *pFilter
   , ByRef pName As WStringZ _                          ' __in  LPCWSTR pName
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method RemoveFilter ( _                              ' VTable offset = 16
     ByVal pFilter As IBaseFilter _                     ' __in  IBaseFilter *pFilter
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method EnumFilters ( _                               ' VTable offset = 20
     ByRef ppEnum As IEnumFilters _                     ' __out IEnumFilters **ppEnum
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method FindFilterByName ( _                          ' VTable offset = 24
     ByRef pName As WStringZ _                          ' __in LPCWSTR pName
   , ByRef ppFilter As IBaseFilter _                    ' __out IBaseFilter **ppFilter
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method ConnectDirect ( _                             ' VTable offset = 28
     ByVal ppinOut As IPin _                            ' __in  IPin *ppinOut
   , ByVal ppinIn As IPin _                             ' __in  IPin *ppinIn
   , Optional ByRef pmt As AM_MEDIA_TYPE _              ' __in_opt  const AM_MEDIA_TYPE *pmt
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Reconnect ( _                                 ' VTable offset = 32
     ByVal ppin As IPin _                               ' __in  IPin *ppin
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Disconnect ( _                                ' VTable offset = 36
     ByVal ppin As IPin _                               ' __in  IPin *ppin
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetDefaultSyncSource ( _                      ' VTable offset = 40
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Connect ( _                                   ' VTable offset = 44
     ByVal ppinOut As IPin _                            ' __in  IPin *ppinOut
   , ByVal ppinIn As IPin _                             ' __in  IPin *ppinIn
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Render ( _                                    ' VTable offset = 48
     ByVal ppinOut As IPin _                            ' __in  IPin *ppinOut
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method RenderFile ( _                                ' VTable offset = 52
     ByRef lpcwstrFile As WStringZ _                    ' __in  LPCWSTR lpcwstrFile
   , Optional ByRef lpcwstrPlayList As WStringZ _       ' __in_opt  LPCWSTR lpcwstrPlayList
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method AddSourceFilter ( _                           ' VTable offset = 56
     ByRef lpcwstrFileName As WStringZ _                ' __in  LPCWSTR lpcwstrFileName
   , ByRef lpcwstrFilterName As WStringZ _              ' __in_opt  LPCWSTR lpcwstrFilterName
   , ByRef ppFilter As IBaseFilter _                    ' __out IBaseFilter **ppFilter
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method SetLogFile ( _                                ' VTable offset = 60
     ByVal hFile As Dword _                             ' __in  DWORD_PTR hFile
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method Abort ( _                                     ' VTable offset = 64
   ) As Long                                            ' HRESULT
   ' =====================================================================================
   Method ShouldOperationContinue ( _                   ' VTable offset = 68
   ) As Long                                            ' HRESULT
   ' =====================================================================================
 
End Interface
 
Interface IMediaControl $IID_IMediaControl
 
   Inherit IDispatch
 
   ' =====================================================================================
   Method Run <1610743808> ( _                          ' VTable offset = 28
   )                                                    ' void
   ' =====================================================================================
   Method Pause <1610743809> ( _                        ' VTable offset = 32
   )                                                    ' void
   ' =====================================================================================
   Method Stop <1610743810> ( _                         ' VTable offset = 36
   )                                                    ' void
   ' =====================================================================================
   Method GetState <1610743811> ( _                     ' VTable offset = 40
     ByVal msTimeout As Long _                          ' __in LONG msTimeout
   , ByRef pfs As Long _                                ' __out OAFilterState *pfs
   )                                                    ' void
   ' =====================================================================================
   Method RenderFile <1610743812> ( _                   ' VTable offset = 44
     ByVal strFilename As WString _                     ' __in BSTR strFilename
   )                                                    ' void
   ' =====================================================================================
   Method AddSourceFilter <1610743813> ( _              ' VTable offset = 48
     ByVal strFilename As WString _                     ' __in BSTR strFilename
   , ByRef ppUnk As IDispatch _                         ' __out IDispatch **ppUnk
   )                                                    ' void
   ' =====================================================================================
   Property Get FilterCollection <1610743814> ( _       ' VTable offset = 52
   ) As IDispatch                                       ' __retval_out IDispatch **ppUnk
   ' =====================================================================================
   Property Get RegFilterCollection <1610743815> ( _    ' VTable offset = 56
   ) As IDispatch                                       ' __retval_out IDispatch **ppUnk
   ' =====================================================================================
   Method StopWhenReady <1610743816> ( _                ' VTable offset = 60
   )                                                    ' void
   ' =====================================================================================
 
End Interface
 
Interface IVideoWindow $IID_IVideoWindow
 
   Inherit IDispatch
 
   ' =====================================================================================
   Property Set Caption <1610743808> ( _                ' VTable offset = 28
     ByVal strCaption As WString _                      ' __in BSTR strCaption
   )                                                    ' void
   ' =====================================================================================
   Property Get Caption <1610743808> ( _                ' VTable offset = 32
   ) As WString                                         ' __retval_out BSTR *strCaption
   ' =====================================================================================
   Property Set WindowStyle <1610743810> ( _            ' VTable offset = 36
     ByVal WindowStyle As Long _                        ' __in long WindowStyle
   )                                                    ' void
   ' =====================================================================================
   Property Get WindowStyle <1610743810> ( _            ' VTable offset = 40
   ) As Long                                            ' __retval_out long *WindowStyle
   ' =====================================================================================
   Property Set WindowStyleEx <1610743812> ( _          ' VTable offset = 44
     ByVal WindowStyleEx As Long _                      ' __in long WindowStyleEx
   )                                                    ' void
   ' =====================================================================================
   Property Get WindowStyleEx <1610743812> ( _          ' VTable offset = 48
   ) As Long                                            ' __retval_out long *WindowStyleEx
   ' =====================================================================================
   Property Set AutoShow <1610743814> ( _               ' VTable offset = 52
     ByVal AutoShow As Long _                           ' __in long AutoShow
   )                                                    ' void
   ' =====================================================================================
   Property Get AutoShow <1610743814> ( _               ' VTable offset = 56
   ) As Long                                            ' __retval_out long *AutoShow
   ' =====================================================================================
   Property Set WindowState <1610743816> ( _            ' VTable offset = 60
     ByVal WindowState As Long _                        ' __in long WindowState
   )                                                    ' void
   ' =====================================================================================
   Property Get WindowState <1610743816> ( _            ' VTable offset = 64
   ) As Long                                            ' __retval_out long *WindowState
   ' =====================================================================================
   Property Set BackgroundPalette <1610743818> ( _      ' VTable offset = 68
     ByVal BackgroundPalette As Long _                  ' __in long BackgroundPalette
   )                                                    ' void
   ' =====================================================================================
   Property Get BackgroundPalette <1610743818> ( _      ' VTable offset = 72
   ) As Long                                            ' __retval_out long *pBackgroundPalette
   ' =====================================================================================
   Property Set Visible <1610743820> ( _                ' VTable offset = 76
     ByVal Visible As Long _                            ' __in long Visible
   )                                                    ' void
   ' =====================================================================================
   Property Get Visible <1610743820> ( _                ' VTable offset = 80
   ) As Long                                            ' __retval_out long *pVisible
   ' =====================================================================================
   Property Set Left <1610743822> ( _                   ' VTable offset = 84
     ByVal Left As Long _                               ' __in long Left
   )                                                    ' void
   ' =====================================================================================
   Property Get Left <1610743822> ( _                   ' VTable offset = 88
   ) As Long                                            ' __retval_out long *pLeft
   ' =====================================================================================
   Property Set Width <1610743824> ( _                  ' VTable offset = 92
     ByVal Width As Long _                              ' __in long Width
   )                                                    ' void
   ' =====================================================================================
   Property Get Width <1610743824> ( _                  ' VTable offset = 96
   ) As Long                                            ' __retval_out long *pWidth
   ' =====================================================================================
   Property Set Top <1610743826> ( _                    ' VTable offset = 100
     ByVal Top As Long _                                ' __in long Top
   )                                                    ' void
   ' =====================================================================================
   Property Get Top <1610743826> ( _                    ' VTable offset = 104
   ) As Long                                            ' __retval_out long *pTop
   ' =====================================================================================
   Property Set Height <1610743828> ( _                 ' VTable offset = 108
     ByVal Height As Long _                             ' __in long Height
   )                                                    ' void
   ' =====================================================================================
   Property Get Height <1610743828> ( _                 ' VTable offset = 112
   ) As Long                                            ' __retval_out long *pHeight
   ' =====================================================================================
   Property Set Owner <1610743830> ( _                  ' VTable offset = 116
     ByVal Owner As Dword _                             ' __in OAHWND Owner
   )                                                    ' void
   ' =====================================================================================
   Property Get Owner <1610743830> ( _                  ' VTable offset = 120
   ) As Dword                                           ' __retval_out OAHWND *Owner
   ' =====================================================================================
   Property Set MessageDrain <1610743832> ( _           ' VTable offset = 124
     ByVal Drain As Dword _                             ' __in OAHWND Drain
   )                                                    ' void
   ' =====================================================================================
   Property Get MessageDrain <1610743832> ( _           ' VTable offset = 128
   ) As Dword                                           ' __retval_out OAHWND *Drain
   ' =====================================================================================
   Property Get BorderColor <1610743834> ( _            ' VTable offset = 132
   ) As Long                                            ' __retval_out long *Color
   ' =====================================================================================
   Property Set BorderColor <1610743834> ( _            ' VTable offset = 136
     ByVal Color As Long _                              ' __in long Color
   )                                                    ' void
   ' =====================================================================================
   Property Get FullScreenMode <1610743836> ( _         ' VTable offset = 140
   ) As Long                                            ' __retval_out long *FullScreenMode
   ' =====================================================================================
   Property Set FullScreenMode <1610743836> ( _         ' VTable offset = 144
     ByVal FullScreenMode As Long _                     ' __in long FullScreenMode
   )                                                    ' void
   ' =====================================================================================
   Method SetWindowForeground <1610743838> ( _          ' VTable offset = 148
     ByVal Focus As Long _                              ' __in long Focus
   )                                                    ' void
   ' =====================================================================================
   Method NotifyOwnerMessage <1610743839> ( _           ' VTable offset = 152
     ByVal hwnd As Dword _                              ' __in OAHWND hwnd
   , ByVal uMsg As Long _                               ' __in long uMsg
   , ByVal wParam As Long _                             ' __in LONG_PTR wParam
   , ByVal lParam As Long _                             ' __in LONG_PTR lParam
   )                                                    ' void
   ' =====================================================================================
   Method SetWindowPosition <1610743840> ( _            ' VTable offset = 156
     ByVal Left As Long _                               ' __in long Left
   , ByVal Top As Long _                                ' __in long Top
   , ByVal Width As Long _                              ' __in long Width
   , ByVal Height As Long _                             ' __in long Height
   )                                                    ' void
   ' =====================================================================================
   Method GetWindowPosition <1610743841> ( _            ' VTable offset = 160
     ByRef pLeft As Long _                              ' __out long *pLeft
   , ByRef pTop As Long _                               ' __out long *pTop
   , ByRef pWidth As Long _                             ' __out long *pWidth
   , ByRef pHeight As Long _                            ' __out long *pHeight
   )                                                    ' void
   ' =====================================================================================
   Method GetMinIdealImageSize <1610743842> ( _         ' VTable offset = 164
     ByRef pWidth As Long _                             ' __out long *pWidth
   , ByRef pHeight As Long _                            ' __out long *pHeight
   )                                                    ' void
   ' =====================================================================================
   Method GetMaxIdealImageSize <1610743843> ( _         ' VTable offset = 168
     ByRef pWidth As Long _                             ' __out long *pWidth
   , ByRef pHeight As Long _                            ' __out long *pHeight
   )                                                    ' void
   ' =====================================================================================
   Method GetRestorePosition <1610743844> ( _           ' VTable offset = 172
     ByRef pLeft As Long _                              ' __out long *pLeft
   , ByRef pTop As Long _                               ' __out long *pTop
   , ByRef pWidth As Long _                             ' __out long *pWidth
   , ByRef pHeight As Long _                            ' __out long *pHeight
   )                                                    ' void
   ' =====================================================================================
   Method HideCursor <1610743845> ( _                   ' VTable offset = 176
     ByVal HideCursor As Long _                         ' __in long HideCursor
   )                                                    ' void
   ' =====================================================================================
   Method IsCursorHidden <1610743846> ( _               ' VTable offset = 180
     ByRef CursorHidden As Long _                       ' __out long *CursorHidden
   )                                                    ' void
   ' =====================================================================================
 
End Interface
 


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm