/[cvs]/api/include/dmoreg.h
ViewVC logotype

Annotation of /api/include/dmoreg.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (hide annotations) (vendor branch)
Sun Jul 1 20:47:59 2001 UTC (22 years, 10 months ago) by bearsoft
Branch: lazy, MAIN
CVS Tags: start, HEAD
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
First import

1 bearsoft 1.1 //------------------------------------------------------------------------------
2     // File: DMOReg.h
3     //
4     // Desc:
5     //
6     // Copyright (c) 1999 - 2000, Microsoft Corporation. All rights reserved.
7     //------------------------------------------------------------------------------
8    
9    
10     #ifndef __DMOREG_H__
11     #define __DMOREG_H__
12    
13     #include "mediaobj.h"
14    
15    
16     // 57f2db8b-e6bb-4513-9d43-dcd2a6593125
17     DEFINE_GUID(DMOCATEGORY_AUDIO_DECODER, 0x57f2db8b,0xe6bb,0x4513,0x9d,0x43,0xdc,0xd2,0xa6,0x59,0x31,0x25);
18     // 33D9A761-90C8-11d0-BD43-00A0C911CE86
19     DEFINE_GUID(DMOCATEGORY_AUDIO_ENCODER, 0x33D9A761,0x90C8,0x11d0,0xBD,0x43,0x00,0xA0,0xC9,0x11,0xCE,0x86);
20     // 4a69b442-28be-4991-969c-b500adf5d8a8
21     DEFINE_GUID(DMOCATEGORY_VIDEO_DECODER, 0x4a69b442,0x28be,0x4991,0x96,0x9c,0xb5,0x00,0xad,0xf5,0xd8,0xa8);
22     // 33D9A760-90C8-11d0-BD43-00A0C911CE86
23     DEFINE_GUID(DMOCATEGORY_VIDEO_ENCODER, 0x33D9A760,0x90C8,0x11d0,0xBD,0x43,0x00,0xA0,0xC9,0x11,0xCE,0x86);
24     // f3602b3f-0592-48df-a4cd-674721e7ebeb
25     DEFINE_GUID(DMOCATEGORY_AUDIO_EFFECT, 0xf3602b3f,0x0592,0x48df,0xa4,0xcd,0x67,0x47,0x21,0xe7,0xeb,0xeb);
26     // d990ee14-776c-4723-be46-3da2f56f10b9
27     DEFINE_GUID(DMOCATEGORY_VIDEO_EFFECT, 0xd990ee14,0x776c,0x4723,0xbe,0x46,0x3d,0xa2,0xf5,0x6f,0x10,0xb9);
28     // f665aaba-3e09-4920-aa5f-219811148f09
29     DEFINE_GUID(DMOCATEGORY_AUDIO_CAPTURE_EFFECT, 0xf665aaba,0x3e09,0x4920,0xaa,0x5f,0x21,0x98,0x11,0x14,0x8f,0x09);
30    
31     // Acoustic Echo Canceller {BF963D80-C559-11D0-8A2B-00A0C9255AC1}
32     // Matches KSNODETYPE_ACOUSTIC_ECHO_CANCEL in ksmedia.h
33     DEFINE_GUID(DMOCATEGORY_ACOUSTIC_ECHO_CANCEL, 0xBF963D80L, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1);
34    
35     // Noise Supression {E07F903F-62FD-4e60-8CDD-DEA7236665B5}
36     // Matches KSNODETYPE_AUDIO_NOISE_SUPPRESS in post Windows ME DDK's ksmedia.h
37     DEFINE_GUID(DMOCATEGORY_AUDIO_NOISE_SUPPRESS, 0xe07f903f, 0x62fd, 0x4e60, 0x8c, 0xdd, 0xde, 0xa7, 0x23, 0x66, 0x65, 0xb5);
38    
39     // Automatic Gain Control {E88C9BA0-C557-11D0-8A2B-00A0C9255AC1}
40     // Matches KSNODETYPE_AGC in ksmedia.h
41     DEFINE_GUID(DMOCATEGORY_AGC, 0xE88C9BA0L, 0xC557, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1);
42    
43     typedef struct _DMO_PARTIAL_MEDIATYPE {
44     GUID type;
45     GUID subtype;
46     } DMO_PARTIAL_MEDIATYPE, *PDMO_PARTIAL_MEDIATYPE;
47    
48     enum DMO_REGISTER_FLAGS {
49     DMO_REGISTERF_IS_KEYED = 0x00000001
50     };
51    
52     enum DMO_ENUM_FLAGS {
53     DMO_ENUMF_INCLUDE_KEYED = 0x00000001
54     };
55    
56     STDAPI DMORegister(
57     LPCWSTR szName,
58     REFCLSID clsidDMO,
59     REFGUID guidCategory,
60     DWORD dwFlags, // DMO_REGISTERF_XXX
61     //
62     // Register all mediatypes supported by the object. This carries no
63     // information about which combinations of input/output types would
64     // actually work.
65     //
66     DWORD cInTypes,
67     const DMO_PARTIAL_MEDIATYPE *pInTypes,
68     DWORD cOutTypes,
69     const DMO_PARTIAL_MEDIATYPE *pOutTypes
70     );
71    
72     STDAPI DMOUnregister(
73     REFCLSID clsidDMO,
74     REFGUID guidCategory // optional - GUID_NULL means unregister from all
75     );
76    
77     STDAPI DMOEnum(
78     REFGUID guidCategory, // GUID_NULL for "all"
79     DWORD dwFlags, // DMO_ENUMF_XXX
80     //
81     // Enumerate only objects that support at least one of the specified input types
82     // and at least one of the specified output types. If no input types are specified,
83     // enumerate objects regardless of what input types they support. Same for
84     // output types.
85     //
86     DWORD cInTypes,
87     const DMO_PARTIAL_MEDIATYPE *pInTypes, // can be NULL only of ulInTypes = 0
88     DWORD cOutTypes,
89     const DMO_PARTIAL_MEDIATYPE *pOutTypes, // can be NULL only of ulOutTypes = 0
90     //
91     // Output parameter - this receives a pointer to the DMO CLSID enumerator
92     //
93     IEnumDMO **ppEnum
94     );
95    
96     STDAPI DMOGetTypes(
97     REFCLSID clsidDMO,
98     unsigned long ulInputTypesRequested,
99     unsigned long *pulInputTypesSupplied,
100     DMO_PARTIAL_MEDIATYPE *pInputTypes,
101     unsigned long ulOutputTypesRequested,
102     unsigned long *pulOutputTypesSupplied,
103     DMO_PARTIAL_MEDIATYPE *pOutputTypes
104     );
105    
106     STDAPI DMOGetName(
107     REFCLSID clsidDMO,
108     WCHAR szName[80]
109     );
110     #endif //__DMOREG_H__

root@recompile.se
ViewVC Help
Powered by ViewVC 1.1.26