ad_faad: Make work with -demuxer lavf
[mplayer/glamo.git] / loader / dmo / DMO_Filter.h
blob02732456693dec3192f9ac564ad475b8c69f9ab3
1 #ifndef MPLAYER_DMO_FILTER_H
2 #define MPLAYER_DMO_FILTER_H
4 #include "dmo_guids.h"
5 #include "dmo_interfaces.h"
7 typedef struct DMO_Filter
9 int m_iHandle;
10 IDMOVideoOutputOptimizations* m_pOptim;
11 IMediaObject* m_pMedia;
12 IMediaObjectInPlace* m_pInPlace;
13 AM_MEDIA_TYPE *m_pOurType, *m_pDestType;
14 } DMO_Filter;
16 typedef struct CMediaBuffer CMediaBuffer;
18 /**
19 * Create DMO_Filter object - similar syntax as for DS_Filter
21 DMO_Filter* DMO_FilterCreate(const char* dllname, const GUID* id,
22 AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt);
23 /**
24 * Destroy DMO_Filter object - release all allocated resources
26 void DMO_Filter_Destroy(DMO_Filter* This);
29 /**
30 * Create IMediaBuffer object - to pass/receive data from DMO_Filter
32 * maxlen - maximum size for this buffer
33 * mem - initial memory 0 - creates memory
34 * len - initial size of used portion of the buffer
35 * copy - make a local copy of data
37 CMediaBuffer* CMediaBufferCreate(unsigned long maxlen, void* mem, unsigned long len, int copy);
39 #endif /* MPLAYER_DMO_FILTER_H */