Mercurial > mplayer.hg
comparison loader/dmo/DMO_Filter.h @ 8294:8e00b6a9e40b
DMO interfaces (copied/converted(c++->c) from avifile)
author | arpi |
---|---|
date | Tue, 26 Nov 2002 22:54:11 +0000 |
parents | |
children | de09fcf0b4f1 |
comparison
equal
deleted
inserted
replaced
8293:f436f419e5ab | 8294:8e00b6a9e40b |
---|---|
1 #ifndef DMO_FILTER_H | |
2 #define DMO_FILTER_H | |
3 | |
4 #include "dmo_guids.h" | |
5 #include "dmo_interfaces.h" | |
6 | |
7 #if defined(__cplusplus) | |
8 extern "C" { | |
9 #endif | |
10 | |
11 typedef struct _DMO_Filter | |
12 { | |
13 int m_iHandle; | |
14 IDMOVideoOutputOptimizations* m_pOptim; | |
15 IMediaObject* m_pMedia; | |
16 IMediaObjectInPlace* m_pInPlace; | |
17 AM_MEDIA_TYPE *m_pOurType, *m_pDestType; | |
18 } DMO_Filter; | |
19 | |
20 typedef struct _CMediaBuffer CMediaBuffer; | |
21 | |
22 /** | |
23 * Create DMO_Filter object - similar syntax as for DS_Filter | |
24 */ | |
25 DMO_Filter* DMO_FilterCreate(const char* dllname, const GUID* id, | |
26 AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt); | |
27 /** | |
28 * Destroy DMO_Filter object - release all allocated resources | |
29 */ | |
30 void DMO_Filter_Destroy(DMO_Filter* This); | |
31 | |
32 | |
33 /** | |
34 * Create IMediaBuffer object - to pass/receive data from DMO_Filter | |
35 * | |
36 * maxlen - maximum size for this buffer | |
37 * mem - initial memory 0 - creates memory | |
38 * len - initial size of used portion of the buffer | |
39 * copy - make a local copy of data | |
40 */ | |
41 CMediaBuffer* CMediaBufferCreate(unsigned long maxlen, void* mem, unsigned long len, int copy); | |
42 | |
43 #if defined(__cplusplus) | |
44 } | |
45 #endif | |
46 | |
47 #endif /* DS_FILTER_H */ |