diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-11-26 22:54:11 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-11-26 22:54:11 +0000 |
commit | c989ead81b1629d601fbc25975a33a28952485e7 (patch) | |
tree | 0255f8b5026f62c77cb6b66ea850e0b536b4412e /loader/dmo/DMO_Filter.h | |
parent | c665efef4a3f27182ff2305da94ba7fa3329bdff (diff) |
DMO interfaces (copied/converted(c++->c) from avifile)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8295 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'loader/dmo/DMO_Filter.h')
-rw-r--r-- | loader/dmo/DMO_Filter.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/loader/dmo/DMO_Filter.h b/loader/dmo/DMO_Filter.h new file mode 100644 index 0000000000..0c5855ad73 --- /dev/null +++ b/loader/dmo/DMO_Filter.h @@ -0,0 +1,47 @@ + #ifndef DMO_FILTER_H +#define DMO_FILTER_H + +#include "dmo_guids.h" +#include "dmo_interfaces.h" + +#if defined(__cplusplus) +extern "C" { +#endif + +typedef struct _DMO_Filter +{ + int m_iHandle; + IDMOVideoOutputOptimizations* m_pOptim; + IMediaObject* m_pMedia; + IMediaObjectInPlace* m_pInPlace; + AM_MEDIA_TYPE *m_pOurType, *m_pDestType; +} DMO_Filter; + +typedef struct _CMediaBuffer CMediaBuffer; + +/** + * Create DMO_Filter object - similar syntax as for DS_Filter + */ +DMO_Filter* DMO_FilterCreate(const char* dllname, const GUID* id, + AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt); +/** + * Destroy DMO_Filter object - release all allocated resources + */ +void DMO_Filter_Destroy(DMO_Filter* This); + + +/** + * Create IMediaBuffer object - to pass/receive data from DMO_Filter + * + * maxlen - maximum size for this buffer + * mem - initial memory 0 - creates memory + * len - initial size of used portion of the buffer + * copy - make a local copy of data + */ +CMediaBuffer* CMediaBufferCreate(unsigned long maxlen, void* mem, unsigned long len, int copy); + +#if defined(__cplusplus) +} +#endif + +#endif /* DS_FILTER_H */ |