diff options
Diffstat (limited to 'loader/dshow/outputpin.h')
-rw-r--r-- | loader/dshow/outputpin.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/loader/dshow/outputpin.h b/loader/dshow/outputpin.h index 1e802f6e02..aa60ca049b 100644 --- a/loader/dshow/outputpin.h +++ b/loader/dshow/outputpin.h @@ -8,6 +8,13 @@ typedef struct _COutputMemPin COutputMemPin; typedef struct _COutputPin COutputPin; +/** + Callback routine for copying samples from pin into filter + \param pUserData pointer to user's data + \param sample IMediaSample +*/ +typedef HRESULT STDCALL (*SAMPLEPROC)(void* pUserData,IMediaSample*sample); + struct _COutputPin { IPin_vt* vt; @@ -15,12 +22,11 @@ struct _COutputPin COutputMemPin* mempin; AM_MEDIA_TYPE type; IPin* remote; - void ( *SetFramePointer )(COutputPin*, char** z); - void ( *SetPointer2 )(COutputPin*, char* p); - void ( *SetFrameSizePointer )(COutputPin*, long* z); + SAMPLEPROC SampleProc; + void* pUserData; void ( *SetNewFormat )(COutputPin*, const AM_MEDIA_TYPE* a); }; -COutputPin* COutputPinCreate(const AM_MEDIA_TYPE* vhdr); +COutputPin* COutputPinCreate(const AM_MEDIA_TYPE* amt,SAMPLEPROC SampleProc,void* pUserData); #endif /* DS_OUTPUTPIN_H */ |