mirror of
https://github.com/mpv-player/mpv
synced 2024-12-25 00:02:13 +00:00
e9e53f8cd0
Using callback function provided by filter to store and process samples from codec instead of explicit typecast to DS_Filter. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22416 b3059339-0415-0410-9bf9-f77b7e298cf2
33 lines
805 B
C
33 lines
805 B
C
#ifndef DS_OUTPUTPIN_H
|
|
#define DS_OUTPUTPIN_H
|
|
|
|
/* "output pin" - the one that connects to output of filter. */
|
|
|
|
#include "allocator.h"
|
|
|
|
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;
|
|
DECLARE_IUNKNOWN();
|
|
COutputMemPin* mempin;
|
|
AM_MEDIA_TYPE type;
|
|
IPin* remote;
|
|
SAMPLEPROC SampleProc;
|
|
void* pUserData;
|
|
void ( *SetNewFormat )(COutputPin*, const AM_MEDIA_TYPE* a);
|
|
};
|
|
|
|
COutputPin* COutputPinCreate(const AM_MEDIA_TYPE* amt,SAMPLEPROC SampleProc,void* pUserData);
|
|
|
|
#endif /* DS_OUTPUTPIN_H */
|