rtmidi 0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +15 -0
- data/.yardopts +7 -0
- data/DEV_NOTES.md +13 -0
- data/LICENSE.txt +46 -0
- data/README.md +82 -0
- data/Rakefile +10 -0
- data/examples/list_ports.rb +15 -0
- data/examples/monitor_input.rb +31 -0
- data/examples/play_notes.rb +28 -0
- data/ext/Rakefile +57 -0
- data/ext/rtmidi-2.0.1/RtError.h +60 -0
- data/ext/rtmidi-2.0.1/RtMidi.cpp +3747 -0
- data/ext/rtmidi-2.0.1/RtMidi.h +675 -0
- data/ext/rtmidi-2.0.1/RtMidi.o +0 -0
- data/ext/rtmidi-2.0.1/include/ks.h +3577 -0
- data/ext/rtmidi-2.0.1/include/ksmedia.h +4824 -0
- data/ext/ruby-rtmidi.cpp +108 -0
- data/ext/ruby-rtmidi.h +44 -0
- data/ext/ruby-rtmidi.o +0 -0
- data/ext/ruby-rtmidi.so +0 -0
- data/lib/rtmidi.rb +4 -0
- data/lib/rtmidi/in.rb +76 -0
- data/lib/rtmidi/interface.rb +67 -0
- data/lib/rtmidi/out.rb +59 -0
- metadata +85 -0
@@ -0,0 +1,4824 @@
|
|
1
|
+
/**
|
2
|
+
* This file has no copyright assigned and is placed in the Public Domain.
|
3
|
+
* This file is part of the w64 mingw-runtime package.
|
4
|
+
*/
|
5
|
+
#if !defined(_KS_)
|
6
|
+
# warning ks.h must be included before ksmedia.h
|
7
|
+
# include "ks.h"
|
8
|
+
#endif
|
9
|
+
|
10
|
+
#if __GNUC__ >= 3
|
11
|
+
# pragma GCC system_header
|
12
|
+
#endif
|
13
|
+
|
14
|
+
#if !defined(_KSMEDIA_)
|
15
|
+
# define _KSMEDIA_
|
16
|
+
|
17
|
+
typedef struct
|
18
|
+
{
|
19
|
+
KSPROPERTY Property;
|
20
|
+
KSMULTIPLE_ITEM MultipleItem;
|
21
|
+
}KSMULTIPLE_DATA_PROP, * PKSMULTIPLE_DATA_PROP;
|
22
|
+
|
23
|
+
# define STATIC_KSMEDIUMSETID_MidiBus \
|
24
|
+
0x05908040L, 0x3246, 0x11D0, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
25
|
+
DEFINE_GUIDSTRUCT("05908040-3246-11D0-A5D6-28DB04C10000", KSMEDIUMSETID_MidiBus);
|
26
|
+
# define KSMEDIUMSETID_MidiBus DEFINE_GUIDNAMED(KSMEDIUMSETID_MidiBus)
|
27
|
+
|
28
|
+
# define STATIC_KSMEDIUMSETID_VPBus \
|
29
|
+
0xA18C15ECL, 0xCE43, 0x11D0, 0xAB, 0xE7, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
30
|
+
DEFINE_GUIDSTRUCT("A18C15EC-CE43-11D0-ABE7-00A0C9223196", KSMEDIUMSETID_VPBus);
|
31
|
+
# define KSMEDIUMSETID_VPBus DEFINE_GUIDNAMED(KSMEDIUMSETID_VPBus)
|
32
|
+
|
33
|
+
# define STATIC_KSINTERFACESETID_Media \
|
34
|
+
0x3A13EB40L, 0x30A7, 0x11D0, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
35
|
+
DEFINE_GUIDSTRUCT("3A13EB40-30A7-11D0-A5D6-28DB04C10000", KSINTERFACESETID_Media);
|
36
|
+
# define KSINTERFACESETID_Media DEFINE_GUIDNAMED(KSINTERFACESETID_Media)
|
37
|
+
|
38
|
+
typedef enum
|
39
|
+
{
|
40
|
+
KSINTERFACE_MEDIA_MUSIC,
|
41
|
+
KSINTERFACE_MEDIA_WAVE_BUFFERED,
|
42
|
+
KSINTERFACE_MEDIA_WAVE_QUEUED
|
43
|
+
}KSINTERFACE_MEDIA;
|
44
|
+
|
45
|
+
# ifndef INIT_USBAUDIO_MID
|
46
|
+
# define INIT_USBAUDIO_MID(guid, id) \
|
47
|
+
{ \
|
48
|
+
(guid)->Data1 = 0x4e1cecd2 + (USHORT)(id); \
|
49
|
+
(guid)->Data2 = 0x1679; \
|
50
|
+
(guid)->Data3 = 0x463b; \
|
51
|
+
(guid)->Data4[0] = 0xa7; \
|
52
|
+
(guid)->Data4[1] = 0x2f; \
|
53
|
+
(guid)->Data4[2] = 0xa5; \
|
54
|
+
(guid)->Data4[3] = 0xbf; \
|
55
|
+
(guid)->Data4[4] = 0x64; \
|
56
|
+
(guid)->Data4[5] = 0xc8; \
|
57
|
+
(guid)->Data4[6] = 0x6e; \
|
58
|
+
(guid)->Data4[7] = 0xba; \
|
59
|
+
}
|
60
|
+
# define EXTRACT_USBAUDIO_MID(guid) \
|
61
|
+
(USHORT)((guid)->Data1 - 0x4e1cecd2)
|
62
|
+
# define DEFINE_USBAUDIO_MID_GUID(id) \
|
63
|
+
0x4e1cecd2 + (USHORT)(id), 0x1679, 0x463b, 0xa7, 0x2f, 0xa5, 0xbf, 0x64, 0xc8, 0x6e, 0xba
|
64
|
+
# define IS_COMPATIBLE_USBAUDIO_MID(guid) \
|
65
|
+
(((guid)->Data1 >= 0x4e1cecd2) && \
|
66
|
+
((guid)->Data1 < 0x4e1cecd2 + 0xffff) && \
|
67
|
+
((guid)->Data2 == 0x1679) && \
|
68
|
+
((guid)->Data3 == 0x463b) && \
|
69
|
+
((guid)->Data4[0] == 0xa7) && \
|
70
|
+
((guid)->Data4[1] == 0x2f) && \
|
71
|
+
((guid)->Data4[2] == 0xa5) && \
|
72
|
+
((guid)->Data4[3] == 0xbf) && \
|
73
|
+
((guid)->Data4[4] == 0x64) && \
|
74
|
+
((guid)->Data4[5] == 0xc8) && \
|
75
|
+
((guid)->Data4[6] == 0x6e) && \
|
76
|
+
((guid)->Data4[7] == 0xba))
|
77
|
+
# endif /* INIT_USBAUDIO_MID */
|
78
|
+
|
79
|
+
# ifndef INIT_USBAUDIO_PID
|
80
|
+
# define INIT_USBAUDIO_PID(guid, id) \
|
81
|
+
{ \
|
82
|
+
(guid)->Data1 = 0xabcc5a5e + (USHORT)(id); \
|
83
|
+
(guid)->Data2 = 0xc263; \
|
84
|
+
(guid)->Data3 = 0x463b; \
|
85
|
+
(guid)->Data4[0] = 0xa7; \
|
86
|
+
(guid)->Data4[1] = 0x2f; \
|
87
|
+
(guid)->Data4[2] = 0xa5; \
|
88
|
+
(guid)->Data4[3] = 0xbf; \
|
89
|
+
(guid)->Data4[4] = 0x64; \
|
90
|
+
(guid)->Data4[5] = 0xc8; \
|
91
|
+
(guid)->Data4[6] = 0x6e; \
|
92
|
+
(guid)->Data4[7] = 0xba; \
|
93
|
+
}
|
94
|
+
# define EXTRACT_USBAUDIO_PID(guid) \
|
95
|
+
(USHORT)((guid)->Data1 - 0xabcc5a5e)
|
96
|
+
# define DEFINE_USBAUDIO_PID_GUID(id) \
|
97
|
+
0xabcc5a5e + (USHORT)(id), 0xc263, 0x463b, 0xa7, 0x2f, 0xa5, 0xbf, 0x64, 0xc8, 0x6e, 0xba
|
98
|
+
# define IS_COMPATIBLE_USBAUDIO_PID(guid) \
|
99
|
+
(((guid)->Data1 >= 0xabcc5a5e) && \
|
100
|
+
((guid)->Data1 < 0xabcc5a5e + 0xffff) && \
|
101
|
+
((guid)->Data2 == 0xc263) && \
|
102
|
+
((guid)->Data3 == 0x463b) && \
|
103
|
+
((guid)->Data4[0] == 0xa7) && \
|
104
|
+
((guid)->Data4[1] == 0x2f) && \
|
105
|
+
((guid)->Data4[2] == 0xa5) && \
|
106
|
+
((guid)->Data4[3] == 0xbf) && \
|
107
|
+
((guid)->Data4[4] == 0x64) && \
|
108
|
+
((guid)->Data4[5] == 0xc8) && \
|
109
|
+
((guid)->Data4[6] == 0x6e) && \
|
110
|
+
((guid)->Data4[7] == 0xba))
|
111
|
+
# endif /* INIT_USBAUDIO_PID */
|
112
|
+
|
113
|
+
# ifndef INIT_USBAUDIO_PRODUCT_NAME
|
114
|
+
# define INIT_USBAUDIO_PRODUCT_NAME(guid, vid, pid, strIndex) \
|
115
|
+
{ \
|
116
|
+
(guid)->Data1 = 0XFC575048 + (USHORT)(vid); \
|
117
|
+
(guid)->Data2 = 0x2E08 + (USHORT)(pid); \
|
118
|
+
(guid)->Data3 = 0x463B + (USHORT)(strIndex); \
|
119
|
+
(guid)->Data4[0] = 0xA7; \
|
120
|
+
(guid)->Data4[1] = 0x2F; \
|
121
|
+
(guid)->Data4[2] = 0xA5; \
|
122
|
+
(guid)->Data4[3] = 0xBF; \
|
123
|
+
(guid)->Data4[4] = 0x64; \
|
124
|
+
(guid)->Data4[5] = 0xC8; \
|
125
|
+
(guid)->Data4[6] = 0x6E; \
|
126
|
+
(guid)->Data4[7] = 0xBA; \
|
127
|
+
}
|
128
|
+
# define DEFINE_USBAUDIO_PRODUCT_NAME(vid, pid, strIndex) \
|
129
|
+
0xFC575048 + (USHORT)(vid), 0x2E08 + (USHORT)(pid), 0x463B + (USHORT)(strIndex), 0xA7, 0x2F, 0xA5, 0xBF, 0x64, 0xC8, 0x6E, 0xBA
|
130
|
+
# endif /* INIT_USBAUDIO_PRODUCT_NAME */
|
131
|
+
|
132
|
+
# define STATIC_KSCOMPONENTID_USBAUDIO \
|
133
|
+
0x8F1275F0, 0x26E9, 0x4264, 0xBA, 0x4D, 0x39, 0xFF, 0xF0, 0x1D, 0x94, 0xAA
|
134
|
+
DEFINE_GUIDSTRUCT("8F1275F0-26E9-4264-BA4D-39FFF01D94AA", KSCOMPONENTID_USBAUDIO);
|
135
|
+
# define KSCOMPONENTID_USBAUDIO DEFINE_GUIDNAMED(KSCOMPONENTID_USBAUDIO)
|
136
|
+
|
137
|
+
# define INIT_USB_TERMINAL(guid, id) \
|
138
|
+
{ \
|
139
|
+
(guid)->Data1 = 0xDFF219E0 + (USHORT)(id); \
|
140
|
+
(guid)->Data2 = 0xF70F; \
|
141
|
+
(guid)->Data3 = 0x11D0; \
|
142
|
+
(guid)->Data4[0] = 0xb9; \
|
143
|
+
(guid)->Data4[1] = 0x17; \
|
144
|
+
(guid)->Data4[2] = 0x00; \
|
145
|
+
(guid)->Data4[3] = 0xa0; \
|
146
|
+
(guid)->Data4[4] = 0xc9; \
|
147
|
+
(guid)->Data4[5] = 0x22; \
|
148
|
+
(guid)->Data4[6] = 0x31; \
|
149
|
+
(guid)->Data4[7] = 0x96; \
|
150
|
+
}
|
151
|
+
# define EXTRACT_USB_TERMINAL(guid) \
|
152
|
+
(USHORT)((guid)->Data1 - 0xDFF219E0)
|
153
|
+
# define DEFINE_USB_TERMINAL_GUID(id) \
|
154
|
+
0xDFF219E0 + (USHORT)(id), 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
155
|
+
|
156
|
+
# define STATIC_KSNODETYPE_MICROPHONE \
|
157
|
+
DEFINE_USB_TERMINAL_GUID(0x0201)
|
158
|
+
DEFINE_GUIDSTRUCT("DFF21BE1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_MICROPHONE);
|
159
|
+
# define KSNODETYPE_MICROPHONE DEFINE_GUIDNAMED(KSNODETYPE_MICROPHONE)
|
160
|
+
|
161
|
+
# define STATIC_KSNODETYPE_DESKTOP_MICROPHONE \
|
162
|
+
DEFINE_USB_TERMINAL_GUID(0x0202)
|
163
|
+
DEFINE_GUIDSTRUCT("DFF21BE2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DESKTOP_MICROPHONE);
|
164
|
+
# define KSNODETYPE_DESKTOP_MICROPHONE DEFINE_GUIDNAMED(KSNODETYPE_DESKTOP_MICROPHONE)
|
165
|
+
|
166
|
+
# define STATIC_KSNODETYPE_PERSONAL_MICROPHONE \
|
167
|
+
DEFINE_USB_TERMINAL_GUID(0x0203)
|
168
|
+
DEFINE_GUIDSTRUCT("DFF21BE3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_PERSONAL_MICROPHONE);
|
169
|
+
# define KSNODETYPE_PERSONAL_MICROPHONE DEFINE_GUIDNAMED(KSNODETYPE_PERSONAL_MICROPHONE)
|
170
|
+
|
171
|
+
# define STATIC_KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE \
|
172
|
+
DEFINE_USB_TERMINAL_GUID(0x0204)
|
173
|
+
DEFINE_GUIDSTRUCT("DFF21BE4-F70F-11D0-B917-00A0C9223196", KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE);
|
174
|
+
# define KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE DEFINE_GUIDNAMED(KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE)
|
175
|
+
|
176
|
+
# define STATIC_KSNODETYPE_MICROPHONE_ARRAY \
|
177
|
+
DEFINE_USB_TERMINAL_GUID(0x0205)
|
178
|
+
DEFINE_GUIDSTRUCT("DFF21BE5-F70F-11D0-B917-00A0C9223196", KSNODETYPE_MICROPHONE_ARRAY);
|
179
|
+
# define KSNODETYPE_MICROPHONE_ARRAY DEFINE_GUIDNAMED(KSNODETYPE_MICROPHONE_ARRAY)
|
180
|
+
|
181
|
+
# define STATIC_KSNODETYPE_PROCESSING_MICROPHONE_ARRAY \
|
182
|
+
DEFINE_USB_TERMINAL_GUID(0x0206)
|
183
|
+
DEFINE_GUIDSTRUCT("DFF21BE6-F70F-11D0-B917-00A0C9223196", KSNODETYPE_PROCESSING_MICROPHONE_ARRAY);
|
184
|
+
# define KSNODETYPE_PROCESSING_MICROPHONE_ARRAY DEFINE_GUIDNAMED(KSNODETYPE_PROCESSING_MICROPHONE_ARRAY)
|
185
|
+
|
186
|
+
# define STATIC_KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR \
|
187
|
+
0x830a44f2, 0xa32d, 0x476b, 0xbe, 0x97, 0x42, 0x84, 0x56, 0x73, 0xb3, 0x5a
|
188
|
+
DEFINE_GUIDSTRUCT("830a44f2-a32d-476b-be97-42845673b35a", KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR);
|
189
|
+
# define KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR DEFINE_GUIDNAMED(KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR)
|
190
|
+
|
191
|
+
# define STATIC_KSNODETYPE_SPEAKER \
|
192
|
+
DEFINE_USB_TERMINAL_GUID(0x0301)
|
193
|
+
DEFINE_GUIDSTRUCT("DFF21CE1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_SPEAKER);
|
194
|
+
# define KSNODETYPE_SPEAKER DEFINE_GUIDNAMED(KSNODETYPE_SPEAKER)
|
195
|
+
|
196
|
+
# define STATIC_KSNODETYPE_HEADPHONES \
|
197
|
+
DEFINE_USB_TERMINAL_GUID(0x0302)
|
198
|
+
DEFINE_GUIDSTRUCT("DFF21CE2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_HEADPHONES);
|
199
|
+
# define KSNODETYPE_HEADPHONES DEFINE_GUIDNAMED(KSNODETYPE_HEADPHONES)
|
200
|
+
|
201
|
+
# define STATIC_KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO \
|
202
|
+
DEFINE_USB_TERMINAL_GUID(0x0303)
|
203
|
+
DEFINE_GUIDSTRUCT("DFF21CE3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO);
|
204
|
+
# define KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO)
|
205
|
+
|
206
|
+
# define STATIC_KSNODETYPE_DESKTOP_SPEAKER \
|
207
|
+
DEFINE_USB_TERMINAL_GUID(0x0304)
|
208
|
+
DEFINE_GUIDSTRUCT("DFF21CE4-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DESKTOP_SPEAKER);
|
209
|
+
# define KSNODETYPE_DESKTOP_SPEAKER DEFINE_GUIDNAMED(KSNODETYPE_DESKTOP_SPEAKER)
|
210
|
+
|
211
|
+
# define STATIC_KSNODETYPE_ROOM_SPEAKER \
|
212
|
+
DEFINE_USB_TERMINAL_GUID(0x0305)
|
213
|
+
DEFINE_GUIDSTRUCT("DFF21CE5-F70F-11D0-B917-00A0C9223196", KSNODETYPE_ROOM_SPEAKER);
|
214
|
+
# define KSNODETYPE_ROOM_SPEAKER DEFINE_GUIDNAMED(KSNODETYPE_ROOM_SPEAKER)
|
215
|
+
|
216
|
+
# define STATIC_KSNODETYPE_COMMUNICATION_SPEAKER \
|
217
|
+
DEFINE_USB_TERMINAL_GUID(0x0306)
|
218
|
+
DEFINE_GUIDSTRUCT("DFF21CE6-F70F-11D0-B917-00A0C9223196", KSNODETYPE_COMMUNICATION_SPEAKER);
|
219
|
+
# define KSNODETYPE_COMMUNICATION_SPEAKER DEFINE_GUIDNAMED(KSNODETYPE_COMMUNICATION_SPEAKER)
|
220
|
+
|
221
|
+
# define STATIC_KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER \
|
222
|
+
DEFINE_USB_TERMINAL_GUID(0x0307)
|
223
|
+
DEFINE_GUIDSTRUCT("DFF21CE7-F70F-11D0-B917-00A0C9223196", KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER);
|
224
|
+
# define KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER DEFINE_GUIDNAMED(KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER)
|
225
|
+
|
226
|
+
# define STATIC_KSNODETYPE_HANDSET \
|
227
|
+
DEFINE_USB_TERMINAL_GUID(0x0401)
|
228
|
+
DEFINE_GUIDSTRUCT("DFF21DE1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_HANDSET);
|
229
|
+
# define KSNODETYPE_HANDSET DEFINE_GUIDNAMED(KSNODETYPE_HANDSET)
|
230
|
+
|
231
|
+
# define STATIC_KSNODETYPE_HEADSET \
|
232
|
+
DEFINE_USB_TERMINAL_GUID(0x0402)
|
233
|
+
DEFINE_GUIDSTRUCT("DFF21DE2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_HEADSET);
|
234
|
+
# define KSNODETYPE_HEADSET DEFINE_GUIDNAMED(KSNODETYPE_HEADSET)
|
235
|
+
|
236
|
+
# define STATIC_KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION \
|
237
|
+
DEFINE_USB_TERMINAL_GUID(0x0403)
|
238
|
+
DEFINE_GUIDSTRUCT("DFF21DE3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION);
|
239
|
+
# define KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION DEFINE_GUIDNAMED(KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION)
|
240
|
+
|
241
|
+
# define STATIC_KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE \
|
242
|
+
DEFINE_USB_TERMINAL_GUID(0x0404)
|
243
|
+
DEFINE_GUIDSTRUCT("DFF21DE4-F70F-11D0-B917-00A0C9223196", KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE);
|
244
|
+
# define KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE DEFINE_GUIDNAMED(KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE)
|
245
|
+
|
246
|
+
# define STATIC_KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE \
|
247
|
+
DEFINE_USB_TERMINAL_GUID(0x0405)
|
248
|
+
DEFINE_GUIDSTRUCT("DFF21DE5-F70F-11D0-B917-00A0C9223196", KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE);
|
249
|
+
# define KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE DEFINE_GUIDNAMED(KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE)
|
250
|
+
|
251
|
+
# define STATIC_KSNODETYPE_PHONE_LINE \
|
252
|
+
DEFINE_USB_TERMINAL_GUID(0x0501)
|
253
|
+
DEFINE_GUIDSTRUCT("DFF21EE1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_PHONE_LINE);
|
254
|
+
# define KSNODETYPE_PHONE_LINE DEFINE_GUIDNAMED(KSNODETYPE_PHONE_LINE)
|
255
|
+
|
256
|
+
# define STATIC_KSNODETYPE_TELEPHONE \
|
257
|
+
DEFINE_USB_TERMINAL_GUID(0x0502)
|
258
|
+
DEFINE_GUIDSTRUCT("DFF21EE2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_TELEPHONE);
|
259
|
+
# define KSNODETYPE_TELEPHONE DEFINE_GUIDNAMED(KSNODETYPE_TELEPHONE)
|
260
|
+
|
261
|
+
# define STATIC_KSNODETYPE_DOWN_LINE_PHONE \
|
262
|
+
DEFINE_USB_TERMINAL_GUID(0x0503)
|
263
|
+
DEFINE_GUIDSTRUCT("DFF21EE3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DOWN_LINE_PHONE);
|
264
|
+
# define KSNODETYPE_DOWN_LINE_PHONE DEFINE_GUIDNAMED(KSNODETYPE_DOWN_LINE_PHONE)
|
265
|
+
|
266
|
+
# define STATIC_KSNODETYPE_ANALOG_CONNECTOR \
|
267
|
+
DEFINE_USB_TERMINAL_GUID(0x601)
|
268
|
+
DEFINE_GUIDSTRUCT("DFF21FE1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_ANALOG_CONNECTOR);
|
269
|
+
# define KSNODETYPE_ANALOG_CONNECTOR DEFINE_GUIDNAMED(KSNODETYPE_ANALOG_CONNECTOR)
|
270
|
+
|
271
|
+
# define STATIC_KSNODETYPE_DIGITAL_AUDIO_INTERFACE \
|
272
|
+
DEFINE_USB_TERMINAL_GUID(0x0602)
|
273
|
+
DEFINE_GUIDSTRUCT("DFF21FE2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DIGITAL_AUDIO_INTERFACE);
|
274
|
+
# define KSNODETYPE_DIGITAL_AUDIO_INTERFACE DEFINE_GUIDNAMED(KSNODETYPE_DIGITAL_AUDIO_INTERFACE)
|
275
|
+
|
276
|
+
# define STATIC_KSNODETYPE_LINE_CONNECTOR \
|
277
|
+
DEFINE_USB_TERMINAL_GUID(0x0603)
|
278
|
+
DEFINE_GUIDSTRUCT("DFF21FE3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_LINE_CONNECTOR);
|
279
|
+
# define KSNODETYPE_LINE_CONNECTOR DEFINE_GUIDNAMED(KSNODETYPE_LINE_CONNECTOR)
|
280
|
+
|
281
|
+
# define STATIC_KSNODETYPE_LEGACY_AUDIO_CONNECTOR \
|
282
|
+
DEFINE_USB_TERMINAL_GUID(0x0604)
|
283
|
+
DEFINE_GUIDSTRUCT("DFF21FE4-F70F-11D0-B917-00A0C9223196", KSNODETYPE_LEGACY_AUDIO_CONNECTOR);
|
284
|
+
# define KSNODETYPE_LEGACY_AUDIO_CONNECTOR DEFINE_GUIDNAMED(KSNODETYPE_LEGACY_AUDIO_CONNECTOR)
|
285
|
+
|
286
|
+
# define STATIC_KSNODETYPE_SPDIF_INTERFACE \
|
287
|
+
DEFINE_USB_TERMINAL_GUID(0x0605)
|
288
|
+
DEFINE_GUIDSTRUCT("DFF21FE5-F70F-11D0-B917-00A0C9223196", KSNODETYPE_SPDIF_INTERFACE);
|
289
|
+
# define KSNODETYPE_SPDIF_INTERFACE DEFINE_GUIDNAMED(KSNODETYPE_SPDIF_INTERFACE)
|
290
|
+
|
291
|
+
# define STATIC_KSNODETYPE_1394_DA_STREAM \
|
292
|
+
DEFINE_USB_TERMINAL_GUID(0x0606)
|
293
|
+
DEFINE_GUIDSTRUCT("DFF21FE6-F70F-11D0-B917-00A0C9223196", KSNODETYPE_1394_DA_STREAM);
|
294
|
+
# define KSNODETYPE_1394_DA_STREAM DEFINE_GUIDNAMED(KSNODETYPE_1394_DA_STREAM)
|
295
|
+
|
296
|
+
# define STATIC_KSNODETYPE_1394_DV_STREAM_SOUNDTRACK \
|
297
|
+
DEFINE_USB_TERMINAL_GUID(0x0607)
|
298
|
+
DEFINE_GUIDSTRUCT("DFF21FE7-F70F-11D0-B917-00A0C9223196", KSNODETYPE_1394_DV_STREAM_SOUNDTRACK);
|
299
|
+
# define KSNODETYPE_1394_DV_STREAM_SOUNDTRACK DEFINE_GUIDNAMED(KSNODETYPE_1394_DV_STREAM_SOUNDTRACK)
|
300
|
+
|
301
|
+
# define STATIC_KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE \
|
302
|
+
DEFINE_USB_TERMINAL_GUID(0x0701)
|
303
|
+
DEFINE_GUIDSTRUCT("DFF220E1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE);
|
304
|
+
# define KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE DEFINE_GUIDNAMED(KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE)
|
305
|
+
|
306
|
+
# define STATIC_KSNODETYPE_EQUALIZATION_NOISE \
|
307
|
+
DEFINE_USB_TERMINAL_GUID(0x0702)
|
308
|
+
DEFINE_GUIDSTRUCT("DFF220E2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_EQUALIZATION_NOISE);
|
309
|
+
# define KSNODETYPE_EQUALIZATION_NOISE DEFINE_GUIDNAMED(KSNODETYPE_EQUALIZATION_NOISE)
|
310
|
+
|
311
|
+
# define STATIC_KSNODETYPE_CD_PLAYER \
|
312
|
+
DEFINE_USB_TERMINAL_GUID(0x0703)
|
313
|
+
DEFINE_GUIDSTRUCT("DFF220E3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_CD_PLAYER);
|
314
|
+
# define KSNODETYPE_CD_PLAYER DEFINE_GUIDNAMED(KSNODETYPE_CD_PLAYER)
|
315
|
+
|
316
|
+
# define STATIC_KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE \
|
317
|
+
DEFINE_USB_TERMINAL_GUID(0x0704)
|
318
|
+
DEFINE_GUIDSTRUCT("DFF220E4-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE);
|
319
|
+
# define KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE DEFINE_GUIDNAMED(KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE)
|
320
|
+
|
321
|
+
# define STATIC_KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE \
|
322
|
+
DEFINE_USB_TERMINAL_GUID(0x0705)
|
323
|
+
DEFINE_GUIDSTRUCT("DFF220E5-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE);
|
324
|
+
# define KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE DEFINE_GUIDNAMED(KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE)
|
325
|
+
|
326
|
+
# define STATIC_KSNODETYPE_MINIDISK \
|
327
|
+
DEFINE_USB_TERMINAL_GUID(0x0706)
|
328
|
+
DEFINE_GUIDSTRUCT("DFF220E6-F70F-11D0-B917-00A0C9223196", KSNODETYPE_MINIDISK);
|
329
|
+
# define KSNODETYPE_MINIDISK DEFINE_GUIDNAMED(KSNODETYPE_MINIDISK)
|
330
|
+
|
331
|
+
# define STATIC_KSNODETYPE_ANALOG_TAPE \
|
332
|
+
DEFINE_USB_TERMINAL_GUID(0x0707)
|
333
|
+
DEFINE_GUIDSTRUCT("DFF220E7-F70F-11D0-B917-00A0C9223196", KSNODETYPE_ANALOG_TAPE);
|
334
|
+
# define KSNODETYPE_ANALOG_TAPE DEFINE_GUIDNAMED(KSNODETYPE_ANALOG_TAPE)
|
335
|
+
|
336
|
+
# define STATIC_KSNODETYPE_PHONOGRAPH \
|
337
|
+
DEFINE_USB_TERMINAL_GUID(0x0708)
|
338
|
+
DEFINE_GUIDSTRUCT("DFF220E8-F70F-11D0-B917-00A0C9223196", KSNODETYPE_PHONOGRAPH);
|
339
|
+
# define KSNODETYPE_PHONOGRAPH DEFINE_GUIDNAMED(KSNODETYPE_PHONOGRAPH)
|
340
|
+
|
341
|
+
# define STATIC_KSNODETYPE_VCR_AUDIO \
|
342
|
+
DEFINE_USB_TERMINAL_GUID(0x0708)
|
343
|
+
DEFINE_GUIDSTRUCT("DFF220E9-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VCR_AUDIO);
|
344
|
+
# define KSNODETYPE_VCR_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_VCR_AUDIO)
|
345
|
+
|
346
|
+
# define STATIC_KSNODETYPE_VIDEO_DISC_AUDIO \
|
347
|
+
DEFINE_USB_TERMINAL_GUID(0x070A)
|
348
|
+
DEFINE_GUIDSTRUCT("DFF220EA-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_DISC_AUDIO);
|
349
|
+
# define KSNODETYPE_VIDEO_DISC_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_DISC_AUDIO)
|
350
|
+
|
351
|
+
# define STATIC_KSNODETYPE_DVD_AUDIO \
|
352
|
+
DEFINE_USB_TERMINAL_GUID(0x070B)
|
353
|
+
DEFINE_GUIDSTRUCT("DFF220EB-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DVD_AUDIO);
|
354
|
+
# define KSNODETYPE_DVD_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_DVD_AUDIO)
|
355
|
+
|
356
|
+
# define STATIC_KSNODETYPE_TV_TUNER_AUDIO \
|
357
|
+
DEFINE_USB_TERMINAL_GUID(0x070C)
|
358
|
+
DEFINE_GUIDSTRUCT("DFF220EC-F70F-11D0-B917-00A0C9223196", KSNODETYPE_TV_TUNER_AUDIO);
|
359
|
+
# define KSNODETYPE_TV_TUNER_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_TV_TUNER_AUDIO)
|
360
|
+
|
361
|
+
# define STATIC_KSNODETYPE_SATELLITE_RECEIVER_AUDIO \
|
362
|
+
DEFINE_USB_TERMINAL_GUID(0x070D)
|
363
|
+
DEFINE_GUIDSTRUCT("DFF220ED-F70F-11D0-B917-00A0C9223196", KSNODETYPE_SATELLITE_RECEIVER_AUDIO);
|
364
|
+
# define KSNODETYPE_SATELLITE_RECEIVER_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_SATELLITE_RECEIVER_AUDIO)
|
365
|
+
|
366
|
+
# define STATIC_KSNODETYPE_CABLE_TUNER_AUDIO \
|
367
|
+
DEFINE_USB_TERMINAL_GUID(0x070E)
|
368
|
+
DEFINE_GUIDSTRUCT("DFF220EE-F70F-11D0-B917-00A0C9223196", KSNODETYPE_CABLE_TUNER_AUDIO);
|
369
|
+
# define KSNODETYPE_CABLE_TUNER_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_CABLE_TUNER_AUDIO)
|
370
|
+
|
371
|
+
# define STATIC_KSNODETYPE_DSS_AUDIO \
|
372
|
+
DEFINE_USB_TERMINAL_GUID(0x070F)
|
373
|
+
DEFINE_GUIDSTRUCT("DFF220EF-F70F-11D0-B917-00A0C9223196", KSNODETYPE_DSS_AUDIO);
|
374
|
+
# define KSNODETYPE_DSS_AUDIO DEFINE_GUIDNAMED(KSNODETYPE_DSS_AUDIO)
|
375
|
+
|
376
|
+
# define STATIC_KSNODETYPE_RADIO_RECEIVER \
|
377
|
+
DEFINE_USB_TERMINAL_GUID(0x0710)
|
378
|
+
DEFINE_GUIDSTRUCT("DFF220F0-F70F-11D0-B917-00A0C9223196", KSNODETYPE_RADIO_RECEIVER);
|
379
|
+
# define KSNODETYPE_RADIO_RECEIVER DEFINE_GUIDNAMED(KSNODETYPE_RADIO_RECEIVER)
|
380
|
+
|
381
|
+
# define STATIC_KSNODETYPE_RADIO_TRANSMITTER \
|
382
|
+
DEFINE_USB_TERMINAL_GUID(0x0711)
|
383
|
+
DEFINE_GUIDSTRUCT("DFF220F1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_RADIO_TRANSMITTER);
|
384
|
+
# define KSNODETYPE_RADIO_TRANSMITTER DEFINE_GUIDNAMED(KSNODETYPE_RADIO_TRANSMITTER)
|
385
|
+
|
386
|
+
# define STATIC_KSNODETYPE_MULTITRACK_RECORDER \
|
387
|
+
DEFINE_USB_TERMINAL_GUID(0x0712)
|
388
|
+
DEFINE_GUIDSTRUCT("DFF220F2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_MULTITRACK_RECORDER);
|
389
|
+
# define KSNODETYPE_MULTITRACK_RECORDER DEFINE_GUIDNAMED(KSNODETYPE_MULTITRACK_RECORDER)
|
390
|
+
|
391
|
+
# define STATIC_KSNODETYPE_SYNTHESIZER \
|
392
|
+
DEFINE_USB_TERMINAL_GUID(0x0713)
|
393
|
+
DEFINE_GUIDSTRUCT("DFF220F3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_SYNTHESIZER);
|
394
|
+
# define KSNODETYPE_SYNTHESIZER DEFINE_GUIDNAMED(KSNODETYPE_SYNTHESIZER)
|
395
|
+
|
396
|
+
# define STATIC_KSNODETYPE_SWSYNTH \
|
397
|
+
0x423274A0L, 0x8B81, 0x11D1, 0xA0, 0x50, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
398
|
+
DEFINE_GUIDSTRUCT("423274A0-8B81-11D1-A050-0000F8004788", KSNODETYPE_SWSYNTH);
|
399
|
+
# define KSNODETYPE_SWSYNTH DEFINE_GUIDNAMED(KSNODETYPE_SWSYNTH)
|
400
|
+
|
401
|
+
# define STATIC_KSNODETYPE_SWMIDI \
|
402
|
+
0xCB9BEFA0L, 0xA251, 0x11D1, 0xA0, 0x50, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
403
|
+
DEFINE_GUIDSTRUCT("CB9BEFA0-A251-11D1-A050-0000F8004788", KSNODETYPE_SWMIDI);
|
404
|
+
# define KSNODETYPE_SWMIDI DEFINE_GUIDNAMED(KSNODETYPE_SWMIDI)
|
405
|
+
|
406
|
+
# define STATIC_KSNODETYPE_DRM_DESCRAMBLE \
|
407
|
+
0xFFBB6E3FL, 0xCCFE, 0x4D84, 0x90, 0xD9, 0x42, 0x14, 0x18, 0xB0, 0x3A, 0x8E
|
408
|
+
DEFINE_GUIDSTRUCT("FFBB6E3F-CCFE-4D84-90D9-421418B03A8E", KSNODETYPE_DRM_DESCRAMBLE);
|
409
|
+
# define KSNODETYPE_DRM_DESCRAMBLE DEFINE_GUIDNAMED(KSNODETYPE_DRM_DESCRAMBLE)
|
410
|
+
|
411
|
+
# define STATIC_KSCATEGORY_AUDIO \
|
412
|
+
0x6994AD04L, 0x93EF, 0x11D0, { 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96 }
|
413
|
+
DEFINE_GUIDSTRUCT("6994AD04-93EF-11D0-A3CC-00A0C9223196", KSCATEGORY_AUDIO);
|
414
|
+
# define KSCATEGORY_AUDIO DEFINE_GUIDNAMED(KSCATEGORY_AUDIO)
|
415
|
+
|
416
|
+
# define STATIC_KSCATEGORY_VIDEO \
|
417
|
+
0x6994AD05L, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
418
|
+
DEFINE_GUIDSTRUCT("6994AD05-93EF-11D0-A3CC-00A0C9223196", KSCATEGORY_VIDEO);
|
419
|
+
# define KSCATEGORY_VIDEO DEFINE_GUIDNAMED(KSCATEGORY_VIDEO)
|
420
|
+
|
421
|
+
# define STATIC_KSCATEGORY_TEXT \
|
422
|
+
0x6994AD06L, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
423
|
+
DEFINE_GUIDSTRUCT("6994AD06-93EF-11D0-A3CC-00A0C9223196", KSCATEGORY_TEXT);
|
424
|
+
# define KSCATEGORY_TEXT DEFINE_GUIDNAMED(KSCATEGORY_TEXT)
|
425
|
+
|
426
|
+
# define STATIC_KSCATEGORY_NETWORK \
|
427
|
+
0x67C9CC3CL, 0x69C4, 0x11D2, 0x87, 0x59, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
428
|
+
DEFINE_GUIDSTRUCT("67C9CC3C-69C4-11D2-8759-00A0C9223196", KSCATEGORY_NETWORK);
|
429
|
+
# define KSCATEGORY_NETWORK DEFINE_GUIDNAMED(KSCATEGORY_NETWORK)
|
430
|
+
|
431
|
+
# define STATIC_KSCATEGORY_TOPOLOGY \
|
432
|
+
0xDDA54A40L, 0x1E4C, 0x11D1, 0xA0, 0x50, 0x40, 0x57, 0x05, 0xC1, 0x00, 0x00
|
433
|
+
DEFINE_GUIDSTRUCT("DDA54A40-1E4C-11D1-A050-405705C10000", KSCATEGORY_TOPOLOGY);
|
434
|
+
# define KSCATEGORY_TOPOLOGY DEFINE_GUIDNAMED(KSCATEGORY_TOPOLOGY)
|
435
|
+
|
436
|
+
# define STATIC_KSCATEGORY_VIRTUAL \
|
437
|
+
0x3503EAC4L, 0x1F26, 0x11D1, 0x8A, 0xB0, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
438
|
+
DEFINE_GUIDSTRUCT("3503EAC4-1F26-11D1-8AB0-00A0C9223196", KSCATEGORY_VIRTUAL);
|
439
|
+
# define KSCATEGORY_VIRTUAL DEFINE_GUIDNAMED(KSCATEGORY_VIRTUAL)
|
440
|
+
|
441
|
+
# define STATIC_KSCATEGORY_ACOUSTIC_ECHO_CANCEL \
|
442
|
+
0xBF963D80L, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
443
|
+
DEFINE_GUIDSTRUCT("BF963D80-C559-11D0-8A2B-00A0C9255AC1", KSCATEGORY_ACOUSTIC_ECHO_CANCEL);
|
444
|
+
# define KSCATEGORY_ACOUSTIC_ECHO_CANCEL DEFINE_GUIDNAMED(KSCATEGORY_ACOUSTIC_ECHO_CANCEL)
|
445
|
+
|
446
|
+
# define STATIC_KSCATEGORY_SYSAUDIO \
|
447
|
+
0xA7C7A5B1L, 0x5AF3, 0x11D1, 0x9C, 0xED, 0x00, 0xA0, 0x24, 0xBF, 0x04, 0x07
|
448
|
+
DEFINE_GUIDSTRUCT("A7C7A5B1-5AF3-11D1-9CED-00A024BF0407", KSCATEGORY_SYSAUDIO);
|
449
|
+
# define KSCATEGORY_SYSAUDIO DEFINE_GUIDNAMED(KSCATEGORY_SYSAUDIO)
|
450
|
+
|
451
|
+
# define STATIC_KSCATEGORY_WDMAUD \
|
452
|
+
0x3E227E76L, 0x690D, 0x11D2, 0x81, 0x61, 0x00, 0x00, 0xF8, 0x77, 0x5B, 0xF1
|
453
|
+
DEFINE_GUIDSTRUCT("3E227E76-690D-11D2-8161-0000F8775BF1", KSCATEGORY_WDMAUD);
|
454
|
+
# define KSCATEGORY_WDMAUD DEFINE_GUIDNAMED(KSCATEGORY_WDMAUD)
|
455
|
+
|
456
|
+
# define STATIC_KSCATEGORY_AUDIO_GFX \
|
457
|
+
0x9BAF9572L, 0x340C, 0x11D3, 0xAB, 0xDC, 0x00, 0xA0, 0xC9, 0x0A, 0xB1, 0x6F
|
458
|
+
DEFINE_GUIDSTRUCT("9BAF9572-340C-11D3-ABDC-00A0C90AB16F", KSCATEGORY_AUDIO_GFX);
|
459
|
+
# define KSCATEGORY_AUDIO_GFX DEFINE_GUIDNAMED(KSCATEGORY_AUDIO_GFX)
|
460
|
+
|
461
|
+
# define STATIC_KSCATEGORY_AUDIO_SPLITTER \
|
462
|
+
0x9EA331FAL, 0xB91B, 0x45F8, 0x92, 0x85, 0xBD, 0x2B, 0xC7, 0x7A, 0xFC, 0xDE
|
463
|
+
DEFINE_GUIDSTRUCT("9EA331FA-B91B-45F8-9285-BD2BC77AFCDE", KSCATEGORY_AUDIO_SPLITTER);
|
464
|
+
# define KSCATEGORY_AUDIO_SPLITTER DEFINE_GUIDNAMED(KSCATEGORY_AUDIO_SPLITTER)
|
465
|
+
|
466
|
+
# define STATIC_KSCATEGORY_SYNTHESIZER STATIC_KSNODETYPE_SYNTHESIZER
|
467
|
+
# define KSCATEGORY_SYNTHESIZER KSNODETYPE_SYNTHESIZER
|
468
|
+
|
469
|
+
# define STATIC_KSCATEGORY_DRM_DESCRAMBLE STATIC_KSNODETYPE_DRM_DESCRAMBLE
|
470
|
+
# define KSCATEGORY_DRM_DESCRAMBLE KSNODETYPE_DRM_DESCRAMBLE
|
471
|
+
|
472
|
+
# define STATIC_KSCATEGORY_AUDIO_DEVICE \
|
473
|
+
0xFBF6F530L, 0x07B9, 0x11D2, 0xA7, 0x1E, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
474
|
+
DEFINE_GUIDSTRUCT("FBF6F530-07B9-11D2-A71E-0000F8004788", KSCATEGORY_AUDIO_DEVICE);
|
475
|
+
# define KSCATEGORY_AUDIO_DEVICE DEFINE_GUIDNAMED(KSCATEGORY_AUDIO_DEVICE)
|
476
|
+
|
477
|
+
# define STATIC_KSCATEGORY_PREFERRED_WAVEOUT_DEVICE \
|
478
|
+
0xD6C5066EL, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
479
|
+
DEFINE_GUIDSTRUCT("D6C5066E-72C1-11D2-9755-0000F8004788", KSCATEGORY_PREFERRED_WAVEOUT_DEVICE);
|
480
|
+
# define KSCATEGORY_PREFERRED_WAVEOUT_DEVICE DEFINE_GUIDNAMED(KSCATEGORY_PREFERRED_WAVEOUT_DEVICE)
|
481
|
+
|
482
|
+
# define STATIC_KSCATEGORY_PREFERRED_WAVEIN_DEVICE \
|
483
|
+
0xD6C50671L, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
484
|
+
DEFINE_GUIDSTRUCT("D6C50671-72C1-11D2-9755-0000F8004788", KSCATEGORY_PREFERRED_WAVEIN_DEVICE);
|
485
|
+
# define KSCATEGORY_PREFERRED_WAVEIN_DEVICE DEFINE_GUIDNAMED(KSCATEGORY_PREFERRED_WAVEIN_DEVICE)
|
486
|
+
|
487
|
+
# define STATIC_KSCATEGORY_PREFERRED_MIDIOUT_DEVICE \
|
488
|
+
0xD6C50674L, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
489
|
+
DEFINE_GUIDSTRUCT("D6C50674-72C1-11D2-9755-0000F8004788", KSCATEGORY_PREFERRED_MIDIOUT_DEVICE);
|
490
|
+
# define KSCATEGORY_PREFERRED_MIDIOUT_DEVICE DEFINE_GUIDNAMED(KSCATEGORY_PREFERRED_MIDIOUT_DEVICE)
|
491
|
+
|
492
|
+
# define STATIC_KSCATEGORY_WDMAUD_USE_PIN_NAME \
|
493
|
+
0x47A4FA20L, 0xA251, 0x11D1, 0xA0, 0x50, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88
|
494
|
+
DEFINE_GUIDSTRUCT("47A4FA20-A251-11D1-A050-0000F8004788", KSCATEGORY_WDMAUD_USE_PIN_NAME);
|
495
|
+
# define KSCATEGORY_WDMAUD_USE_PIN_NAME DEFINE_GUIDNAMED(KSCATEGORY_WDMAUD_USE_PIN_NAME)
|
496
|
+
|
497
|
+
# define STATIC_KSCATEGORY_ESCALANTE_PLATFORM_DRIVER \
|
498
|
+
0x74f3aea8L, 0x9768, 0x11d1, 0x8e, 0x07, 0x00, 0xa0, 0xc9, 0x5e, 0xc2, 0x2e
|
499
|
+
DEFINE_GUIDSTRUCT("74f3aea8-9768-11d1-8e07-00a0c95ec22e", KSCATEGORY_ESCALANTE_PLATFORM_DRIVER);
|
500
|
+
# define KSCATEGORY_ESCALANTE_PLATFORM_DRIVER DEFINE_GUIDNAMED(KSCATEGORY_ESCALANTE_PLATFORM_DRIVER)
|
501
|
+
|
502
|
+
# define STATIC_KSDATAFORMAT_TYPE_VIDEO \
|
503
|
+
0x73646976L, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
|
504
|
+
DEFINE_GUIDSTRUCT("73646976-0000-0010-8000-00aa00389b71", KSDATAFORMAT_TYPE_VIDEO);
|
505
|
+
# define KSDATAFORMAT_TYPE_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_VIDEO)
|
506
|
+
|
507
|
+
# define STATIC_KSDATAFORMAT_TYPE_AUDIO \
|
508
|
+
0x73647561L, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
|
509
|
+
DEFINE_GUIDSTRUCT("73647561-0000-0010-8000-00aa00389b71", KSDATAFORMAT_TYPE_AUDIO);
|
510
|
+
# define KSDATAFORMAT_TYPE_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_AUDIO)
|
511
|
+
|
512
|
+
# define STATIC_KSDATAFORMAT_TYPE_TEXT \
|
513
|
+
0x73747874L, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
|
514
|
+
DEFINE_GUIDSTRUCT("73747874-0000-0010-8000-00aa00389b71", KSDATAFORMAT_TYPE_TEXT);
|
515
|
+
# define KSDATAFORMAT_TYPE_TEXT DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_TEXT)
|
516
|
+
|
517
|
+
# if !defined(DEFINE_WAVEFORMATEX_GUID)
|
518
|
+
# define DEFINE_WAVEFORMATEX_GUID(x) \
|
519
|
+
(USHORT)(x), 0x0000, 0x0010, { 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71 }
|
520
|
+
# endif
|
521
|
+
|
522
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_WAVEFORMATEX \
|
523
|
+
0x00000000L, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
|
524
|
+
DEFINE_GUIDSTRUCT("00000000-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_WAVEFORMATEX);
|
525
|
+
# define KSDATAFORMAT_SUBTYPE_WAVEFORMATEX DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_WAVEFORMATEX)
|
526
|
+
|
527
|
+
# define INIT_WAVEFORMATEX_GUID(Guid, x) \
|
528
|
+
{ \
|
529
|
+
*(Guid) = KSDATAFORMAT_SUBTYPE_WAVEFORMATEX; \
|
530
|
+
(Guid)->Data1 = (USHORT)(x); \
|
531
|
+
}
|
532
|
+
|
533
|
+
# define EXTRACT_WAVEFORMATEX_ID(Guid) \
|
534
|
+
(USHORT)((Guid)->Data1)
|
535
|
+
|
536
|
+
# define IS_VALID_WAVEFORMATEX_GUID(Guid) \
|
537
|
+
(!memcmp(((PUSHORT)&KSDATAFORMAT_SUBTYPE_WAVEFORMATEX) + 1, ((PUSHORT)(Guid)) + 1, sizeof(GUID) - sizeof(USHORT)))
|
538
|
+
|
539
|
+
# ifndef INIT_MMREG_MID
|
540
|
+
# define INIT_MMREG_MID(guid, id) \
|
541
|
+
{ \
|
542
|
+
(guid)->Data1 = 0xd5a47fa7 + (USHORT)(id); \
|
543
|
+
(guid)->Data2 = 0x6d98; \
|
544
|
+
(guid)->Data3 = 0x11d1; \
|
545
|
+
(guid)->Data4[0] = 0xa2; \
|
546
|
+
(guid)->Data4[1] = 0x1a; \
|
547
|
+
(guid)->Data4[2] = 0x00; \
|
548
|
+
(guid)->Data4[3] = 0xa0; \
|
549
|
+
(guid)->Data4[4] = 0xc9; \
|
550
|
+
(guid)->Data4[5] = 0x22; \
|
551
|
+
(guid)->Data4[6] = 0x31; \
|
552
|
+
(guid)->Data4[7] = 0x96; \
|
553
|
+
}
|
554
|
+
# define EXTRACT_MMREG_MID(guid) \
|
555
|
+
(USHORT)((guid)->Data1 - 0xd5a47fa7)
|
556
|
+
# define DEFINE_MMREG_MID_GUID(id) \
|
557
|
+
0xd5a47fa7 + (USHORT)(id), 0x6d98, 0x11d1, 0xa2, 0x1a, 0x00, 0xa0, 0xc9, 0x22, 0x31, 0x96
|
558
|
+
|
559
|
+
# define IS_COMPATIBLE_MMREG_MID(guid) \
|
560
|
+
(((guid)->Data1 >= 0xd5a47fa7) && \
|
561
|
+
((guid)->Data1 < 0xd5a47fa7 + 0xffff) && \
|
562
|
+
((guid)->Data2 == 0x6d98) && \
|
563
|
+
((guid)->Data3 == 0x11d1) && \
|
564
|
+
((guid)->Data4[0] == 0xa2) && \
|
565
|
+
((guid)->Data4[1] == 0x1a) && \
|
566
|
+
((guid)->Data4[2] == 0x00) && \
|
567
|
+
((guid)->Data4[3] == 0xa0) && \
|
568
|
+
((guid)->Data4[4] == 0xc9) && \
|
569
|
+
((guid)->Data4[5] == 0x22) && \
|
570
|
+
((guid)->Data4[6] == 0x31) && \
|
571
|
+
((guid)->Data4[7] == 0x96))
|
572
|
+
# endif /* INIT_MMREG_MID */
|
573
|
+
|
574
|
+
# ifndef INIT_MMREG_PID
|
575
|
+
# define INIT_MMREG_PID(guid, id) \
|
576
|
+
{ \
|
577
|
+
(guid)->Data1 = 0xe36dc2ac + (USHORT)(id); \
|
578
|
+
(guid)->Data2 = 0x6d9a; \
|
579
|
+
(guid)->Data3 = 0x11d1; \
|
580
|
+
(guid)->Data4[0] = 0xa2; \
|
581
|
+
(guid)->Data4[1] = 0x1a; \
|
582
|
+
(guid)->Data4[2] = 0x00; \
|
583
|
+
(guid)->Data4[3] = 0xa0; \
|
584
|
+
(guid)->Data4[4] = 0xc9; \
|
585
|
+
(guid)->Data4[5] = 0x22; \
|
586
|
+
(guid)->Data4[6] = 0x31; \
|
587
|
+
(guid)->Data4[7] = 0x96; \
|
588
|
+
}
|
589
|
+
# define EXTRACT_MMREG_PID(guid) \
|
590
|
+
(USHORT)((guid)->Data1 - 0xe36dc2ac)
|
591
|
+
# define DEFINE_MMREG_PID_GUID(id) \
|
592
|
+
0xe36dc2ac + (USHORT)(id), 0x6d9a, 0x11d1, 0xa2, 0x1a, 0x00, 0xa0, 0xc9, 0x22, 0x31, 0x96
|
593
|
+
|
594
|
+
# define IS_COMPATIBLE_MMREG_PID(guid) \
|
595
|
+
(((guid)->Data1 >= 0xe36dc2ac) && \
|
596
|
+
((guid)->Data1 < 0xe36dc2ac + 0xffff) && \
|
597
|
+
((guid)->Data2 == 0x6d9a) && \
|
598
|
+
((guid)->Data3 == 0x11d1) && \
|
599
|
+
((guid)->Data4[0] == 0xa2) && \
|
600
|
+
((guid)->Data4[1] == 0x1a) && \
|
601
|
+
((guid)->Data4[2] == 0x00) && \
|
602
|
+
((guid)->Data4[3] == 0xa0) && \
|
603
|
+
((guid)->Data4[4] == 0xc9) && \
|
604
|
+
((guid)->Data4[5] == 0x22) && \
|
605
|
+
((guid)->Data4[6] == 0x31) && \
|
606
|
+
((guid)->Data4[7] == 0x96))
|
607
|
+
# endif /* INIT_MMREG_PID */
|
608
|
+
|
609
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_ANALOG \
|
610
|
+
0x6dba3190L, 0x67bd, 0x11cf, 0xa0, 0xf7, 0x00, 0x20, 0xaf, 0xd1, 0x56, 0xe4
|
611
|
+
DEFINE_GUIDSTRUCT("6dba3190-67bd-11cf-a0f7-0020afd156e4", KSDATAFORMAT_SUBTYPE_ANALOG);
|
612
|
+
# define KSDATAFORMAT_SUBTYPE_ANALOG DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_ANALOG)
|
613
|
+
|
614
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_PCM \
|
615
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_PCM)
|
616
|
+
DEFINE_GUIDSTRUCT("00000001-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_PCM);
|
617
|
+
# define KSDATAFORMAT_SUBTYPE_PCM DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_PCM)
|
618
|
+
|
619
|
+
# ifdef _INC_MMREG
|
620
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_IEEE_FLOAT \
|
621
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_IEEE_FLOAT)
|
622
|
+
DEFINE_GUIDSTRUCT("00000003-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_IEEE_FLOAT);
|
623
|
+
# define KSDATAFORMAT_SUBTYPE_IEEE_FLOAT DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_IEEE_FLOAT)
|
624
|
+
|
625
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_DRM \
|
626
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_DRM)
|
627
|
+
DEFINE_GUIDSTRUCT("00000009-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_DRM);
|
628
|
+
# define KSDATAFORMAT_SUBTYPE_DRM DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_DRM)
|
629
|
+
|
630
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_ALAW \
|
631
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_ALAW)
|
632
|
+
DEFINE_GUIDSTRUCT("00000006-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_ALAW);
|
633
|
+
# define KSDATAFORMAT_SUBTYPE_ALAW DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_ALAW)
|
634
|
+
|
635
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MULAW \
|
636
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_MULAW)
|
637
|
+
DEFINE_GUIDSTRUCT("00000007-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_MULAW);
|
638
|
+
# define KSDATAFORMAT_SUBTYPE_MULAW DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MULAW)
|
639
|
+
|
640
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_ADPCM \
|
641
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_ADPCM)
|
642
|
+
DEFINE_GUIDSTRUCT("00000002-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_ADPCM);
|
643
|
+
# define KSDATAFORMAT_SUBTYPE_ADPCM DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_ADPCM)
|
644
|
+
|
645
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MPEG \
|
646
|
+
DEFINE_WAVEFORMATEX_GUID(WAVE_FORMAT_MPEG)
|
647
|
+
DEFINE_GUIDSTRUCT("00000050-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_MPEG);
|
648
|
+
# define KSDATAFORMAT_SUBTYPE_MPEG DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MPEG)
|
649
|
+
# endif /* _INC_MMREG */
|
650
|
+
|
651
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_VC_ID \
|
652
|
+
0xAD98D184L, 0xAAC3, 0x11D0, 0xA4, 0x1C, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
653
|
+
DEFINE_GUIDSTRUCT("AD98D184-AAC3-11D0-A41C-00A0C9223196", KSDATAFORMAT_SPECIFIER_VC_ID);
|
654
|
+
# define KSDATAFORMAT_SPECIFIER_VC_ID DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_VC_ID)
|
655
|
+
|
656
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_WAVEFORMATEX \
|
657
|
+
0x05589f81L, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a
|
658
|
+
DEFINE_GUIDSTRUCT("05589f81-c356-11ce-bf01-00aa0055595a", KSDATAFORMAT_SPECIFIER_WAVEFORMATEX);
|
659
|
+
# define KSDATAFORMAT_SPECIFIER_WAVEFORMATEX DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_WAVEFORMATEX)
|
660
|
+
|
661
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_DSOUND \
|
662
|
+
0x518590a2L, 0xa184, 0x11d0, 0x85, 0x22, 0x00, 0xc0, 0x4f, 0xd9, 0xba, 0xf3
|
663
|
+
DEFINE_GUIDSTRUCT("518590a2-a184-11d0-8522-00c04fd9baf3", KSDATAFORMAT_SPECIFIER_DSOUND);
|
664
|
+
# define KSDATAFORMAT_SPECIFIER_DSOUND DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_DSOUND)
|
665
|
+
|
666
|
+
# if defined(_INC_MMSYSTEM) || defined(_INC_MMREG) || 1
|
667
|
+
# if !defined(PACK_PRAGMAS_NOT_SUPPORTED)
|
668
|
+
# include <pshpack1.h>
|
669
|
+
# endif
|
670
|
+
typedef struct
|
671
|
+
{
|
672
|
+
KSDATAFORMAT DataFormat;
|
673
|
+
WAVEFORMATEX WaveFormatEx;
|
674
|
+
}KSDATAFORMAT_WAVEFORMATEX, * PKSDATAFORMAT_WAVEFORMATEX;
|
675
|
+
|
676
|
+
# ifndef _WAVEFORMATEXTENSIBLE_
|
677
|
+
# define _WAVEFORMATEXTENSIBLE_
|
678
|
+
typedef struct
|
679
|
+
{
|
680
|
+
WAVEFORMATEX Format;
|
681
|
+
union
|
682
|
+
{
|
683
|
+
WORD wValidBitsPerSample;
|
684
|
+
WORD wSamplesPerBlock;
|
685
|
+
WORD wReserved;
|
686
|
+
}Samples;
|
687
|
+
DWORD dwChannelMask;
|
688
|
+
|
689
|
+
GUID SubFormat;
|
690
|
+
}WAVEFORMATEXTENSIBLE, * PWAVEFORMATEXTENSIBLE;
|
691
|
+
# endif /* _WAVEFORMATEXTENSIBLE_ */
|
692
|
+
|
693
|
+
# if !defined(WAVE_FORMAT_EXTENSIBLE)
|
694
|
+
# define WAVE_FORMAT_EXTENSIBLE 0xFFFE
|
695
|
+
# endif
|
696
|
+
|
697
|
+
typedef struct
|
698
|
+
{
|
699
|
+
ULONG Flags;
|
700
|
+
ULONG Control;
|
701
|
+
WAVEFORMATEX WaveFormatEx;
|
702
|
+
}KSDSOUND_BUFFERDESC, * PKSDSOUND_BUFFERDESC;
|
703
|
+
|
704
|
+
typedef struct
|
705
|
+
{
|
706
|
+
KSDATAFORMAT DataFormat;
|
707
|
+
KSDSOUND_BUFFERDESC BufferDesc;
|
708
|
+
}KSDATAFORMAT_DSOUND, * PKSDATAFORMAT_DSOUND;
|
709
|
+
|
710
|
+
# if !defined(PACK_PRAGMAS_NOT_SUPPORTED)
|
711
|
+
# include <poppack.h>
|
712
|
+
# endif
|
713
|
+
# endif /* defined(_INC_MMSYSTEM) || defined(_INC_MMREG) */
|
714
|
+
|
715
|
+
# define KSDSOUND_BUFFER_PRIMARY 0x00000001
|
716
|
+
# define KSDSOUND_BUFFER_STATIC 0x00000002
|
717
|
+
# define KSDSOUND_BUFFER_LOCHARDWARE 0x00000004
|
718
|
+
# define KSDSOUND_BUFFER_LOCSOFTWARE 0x00000008
|
719
|
+
|
720
|
+
# define KSDSOUND_BUFFER_CTRL_3D 0x00000001
|
721
|
+
# define KSDSOUND_BUFFER_CTRL_FREQUENCY 0x00000002
|
722
|
+
# define KSDSOUND_BUFFER_CTRL_PAN 0x00000004
|
723
|
+
# define KSDSOUND_BUFFER_CTRL_VOLUME 0x00000008
|
724
|
+
# define KSDSOUND_BUFFER_CTRL_POSITIONNOTIFY 0x00000010
|
725
|
+
|
726
|
+
typedef struct
|
727
|
+
{
|
728
|
+
DWORDLONG PlayOffset;
|
729
|
+
DWORDLONG WriteOffset;
|
730
|
+
}KSAUDIO_POSITION, * PKSAUDIO_POSITION;
|
731
|
+
|
732
|
+
typedef struct _DS3DVECTOR
|
733
|
+
{
|
734
|
+
__MINGW_EXTENSION union
|
735
|
+
{
|
736
|
+
FLOAT x;
|
737
|
+
FLOAT dvX;
|
738
|
+
};
|
739
|
+
__MINGW_EXTENSION union
|
740
|
+
{
|
741
|
+
FLOAT y;
|
742
|
+
FLOAT dvY;
|
743
|
+
};
|
744
|
+
__MINGW_EXTENSION union
|
745
|
+
{
|
746
|
+
FLOAT z;
|
747
|
+
FLOAT dvZ;
|
748
|
+
};
|
749
|
+
}DS3DVECTOR, * PDS3DVECTOR;
|
750
|
+
|
751
|
+
# define STATIC_KSPROPSETID_DirectSound3DListener \
|
752
|
+
0x437b3414L, 0xd060, 0x11d0, 0x85, 0x83, 0x00, 0xc0, 0x4f, 0xd9, 0xba, 0xf3
|
753
|
+
DEFINE_GUIDSTRUCT("437b3414-d060-11d0-8583-00c04fd9baf3", KSPROPSETID_DirectSound3DListener);
|
754
|
+
# define KSPROPSETID_DirectSound3DListener DEFINE_GUIDNAMED(KSPROPSETID_DirectSound3DListener)
|
755
|
+
|
756
|
+
typedef enum
|
757
|
+
{
|
758
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_ALL,
|
759
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_POSITION,
|
760
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_VELOCITY,
|
761
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_ORIENTATION,
|
762
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_DISTANCEFACTOR,
|
763
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_ROLLOFFFACTOR,
|
764
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_DOPPLERFACTOR,
|
765
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_BATCH,
|
766
|
+
KSPROPERTY_DIRECTSOUND3DLISTENER_ALLOCATION
|
767
|
+
}KSPROPERTY_DIRECTSOUND3DLISTENER;
|
768
|
+
|
769
|
+
typedef struct
|
770
|
+
{
|
771
|
+
DS3DVECTOR Position;
|
772
|
+
DS3DVECTOR Velocity;
|
773
|
+
DS3DVECTOR OrientFront;
|
774
|
+
DS3DVECTOR OrientTop;
|
775
|
+
FLOAT DistanceFactor;
|
776
|
+
FLOAT RolloffFactor;
|
777
|
+
FLOAT DopplerFactor;
|
778
|
+
}KSDS3D_LISTENER_ALL, * PKSDS3D_LISTENER_ALL;
|
779
|
+
|
780
|
+
typedef struct
|
781
|
+
{
|
782
|
+
DS3DVECTOR Front;
|
783
|
+
DS3DVECTOR Top;
|
784
|
+
}KSDS3D_LISTENER_ORIENTATION, * PKSDS3D_LISTENER_ORIENTATION;
|
785
|
+
|
786
|
+
# define STATIC_KSPROPSETID_DirectSound3DBuffer \
|
787
|
+
0x437b3411L, 0xd060, 0x11d0, 0x85, 0x83, 0x00, 0xc0, 0x4f, 0xd9, 0xba, 0xf3
|
788
|
+
DEFINE_GUIDSTRUCT("437b3411-d060-11d0-8583-00c04fd9baf3", KSPROPSETID_DirectSound3DBuffer);
|
789
|
+
# define KSPROPSETID_DirectSound3DBuffer DEFINE_GUIDNAMED(KSPROPSETID_DirectSound3DBuffer)
|
790
|
+
|
791
|
+
typedef enum
|
792
|
+
{
|
793
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_ALL,
|
794
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_POSITION,
|
795
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_VELOCITY,
|
796
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEANGLES,
|
797
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEORIENTATION,
|
798
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEOUTSIDEVOLUME,
|
799
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_MINDISTANCE,
|
800
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_MAXDISTANCE,
|
801
|
+
KSPROPERTY_DIRECTSOUND3DBUFFER_MODE
|
802
|
+
}KSPROPERTY_DIRECTSOUND3DBUFFER;
|
803
|
+
|
804
|
+
typedef struct
|
805
|
+
{
|
806
|
+
DS3DVECTOR Position;
|
807
|
+
DS3DVECTOR Velocity;
|
808
|
+
ULONG InsideConeAngle;
|
809
|
+
ULONG OutsideConeAngle;
|
810
|
+
DS3DVECTOR ConeOrientation;
|
811
|
+
LONG ConeOutsideVolume;
|
812
|
+
FLOAT MinDistance;
|
813
|
+
FLOAT MaxDistance;
|
814
|
+
ULONG Mode;
|
815
|
+
}KSDS3D_BUFFER_ALL, * PKSDS3D_BUFFER_ALL;
|
816
|
+
|
817
|
+
typedef struct
|
818
|
+
{
|
819
|
+
ULONG InsideConeAngle;
|
820
|
+
ULONG OutsideConeAngle;
|
821
|
+
}KSDS3D_BUFFER_CONE_ANGLES, * PKSDS3D_BUFFER_CONE_ANGLES;
|
822
|
+
|
823
|
+
# define KSAUDIO_STEREO_SPEAKER_GEOMETRY_HEADPHONE (-1)
|
824
|
+
# define KSAUDIO_STEREO_SPEAKER_GEOMETRY_MIN 5
|
825
|
+
# define KSAUDIO_STEREO_SPEAKER_GEOMETRY_NARROW 10
|
826
|
+
# define KSAUDIO_STEREO_SPEAKER_GEOMETRY_WIDE 20
|
827
|
+
# define KSAUDIO_STEREO_SPEAKER_GEOMETRY_MAX 180
|
828
|
+
|
829
|
+
# define KSDSOUND_3D_MODE_NORMAL 0x00000000
|
830
|
+
# define KSDSOUND_3D_MODE_HEADRELATIVE 0x00000001
|
831
|
+
# define KSDSOUND_3D_MODE_DISABLE 0x00000002
|
832
|
+
|
833
|
+
# define KSDSOUND_BUFFER_CTRL_HRTF_3D 0x40000000
|
834
|
+
|
835
|
+
typedef struct
|
836
|
+
{
|
837
|
+
ULONG Size;
|
838
|
+
ULONG Enabled;
|
839
|
+
WINBOOL SwapChannels;
|
840
|
+
WINBOOL ZeroAzimuth;
|
841
|
+
WINBOOL CrossFadeOutput;
|
842
|
+
ULONG FilterSize;
|
843
|
+
}KSDS3D_HRTF_PARAMS_MSG, * PKSDS3D_HRTF_PARAMS_MSG;
|
844
|
+
|
845
|
+
typedef enum
|
846
|
+
{
|
847
|
+
FULL_FILTER,
|
848
|
+
LIGHT_FILTER,
|
849
|
+
KSDS3D_FILTER_QUALITY_COUNT
|
850
|
+
}KSDS3D_HRTF_FILTER_QUALITY;
|
851
|
+
|
852
|
+
typedef struct
|
853
|
+
{
|
854
|
+
ULONG Size;
|
855
|
+
KSDS3D_HRTF_FILTER_QUALITY Quality;
|
856
|
+
FLOAT SampleRate;
|
857
|
+
ULONG MaxFilterSize;
|
858
|
+
ULONG FilterTransientMuteLength;
|
859
|
+
ULONG FilterOverlapBufferLength;
|
860
|
+
ULONG OutputOverlapBufferLength;
|
861
|
+
ULONG Reserved;
|
862
|
+
}KSDS3D_HRTF_INIT_MSG, * PKSDS3D_HRTF_INIT_MSG;
|
863
|
+
|
864
|
+
typedef enum
|
865
|
+
{
|
866
|
+
FLOAT_COEFF,
|
867
|
+
SHORT_COEFF,
|
868
|
+
KSDS3D_COEFF_COUNT
|
869
|
+
}KSDS3D_HRTF_COEFF_FORMAT;
|
870
|
+
|
871
|
+
typedef enum
|
872
|
+
{
|
873
|
+
DIRECT_FORM,
|
874
|
+
CASCADE_FORM,
|
875
|
+
KSDS3D_FILTER_METHOD_COUNT
|
876
|
+
}KSDS3D_HRTF_FILTER_METHOD;
|
877
|
+
|
878
|
+
typedef enum
|
879
|
+
{
|
880
|
+
DS3D_HRTF_VERSION_1
|
881
|
+
}KSDS3D_HRTF_FILTER_VERSION;
|
882
|
+
|
883
|
+
typedef struct
|
884
|
+
{
|
885
|
+
KSDS3D_HRTF_FILTER_METHOD FilterMethod;
|
886
|
+
KSDS3D_HRTF_COEFF_FORMAT CoeffFormat;
|
887
|
+
KSDS3D_HRTF_FILTER_VERSION Version;
|
888
|
+
ULONG Reserved;
|
889
|
+
}KSDS3D_HRTF_FILTER_FORMAT_MSG, * PKSDS3D_HRTF_FILTER_FORMAT_MSG;
|
890
|
+
|
891
|
+
# define STATIC_KSPROPSETID_Hrtf3d \
|
892
|
+
0xb66decb0L, 0xa083, 0x11d0, 0x85, 0x1e, 0x00, 0xc0, 0x4f, 0xd9, 0xba, 0xf3
|
893
|
+
DEFINE_GUIDSTRUCT("b66decb0-a083-11d0-851e-00c04fd9baf3", KSPROPSETID_Hrtf3d);
|
894
|
+
# define KSPROPSETID_Hrtf3d DEFINE_GUIDNAMED(KSPROPSETID_Hrtf3d)
|
895
|
+
|
896
|
+
typedef enum
|
897
|
+
{
|
898
|
+
KSPROPERTY_HRTF3D_PARAMS = 0,
|
899
|
+
KSPROPERTY_HRTF3D_INITIALIZE,
|
900
|
+
KSPROPERTY_HRTF3D_FILTER_FORMAT
|
901
|
+
}KSPROPERTY_HRTF3D;
|
902
|
+
|
903
|
+
typedef struct
|
904
|
+
{
|
905
|
+
LONG Channel;
|
906
|
+
FLOAT VolSmoothScale;
|
907
|
+
FLOAT TotalDryAttenuation;
|
908
|
+
FLOAT TotalWetAttenuation;
|
909
|
+
LONG SmoothFrequency;
|
910
|
+
LONG Delay;
|
911
|
+
}KSDS3D_ITD_PARAMS, * PKSDS3D_ITD_PARAMS;
|
912
|
+
|
913
|
+
typedef struct
|
914
|
+
{
|
915
|
+
ULONG Enabled;
|
916
|
+
KSDS3D_ITD_PARAMS LeftParams;
|
917
|
+
KSDS3D_ITD_PARAMS RightParams;
|
918
|
+
ULONG Reserved;
|
919
|
+
}KSDS3D_ITD_PARAMS_MSG, * PKSDS3D_ITD_PARAMS_MSG;
|
920
|
+
|
921
|
+
# define STATIC_KSPROPSETID_Itd3d \
|
922
|
+
0x6429f090L, 0x9fd9, 0x11d0, 0xa7, 0x5b, 0x00, 0xa0, 0xc9, 0x03, 0x65, 0xe3
|
923
|
+
DEFINE_GUIDSTRUCT("6429f090-9fd9-11d0-a75b-00a0c90365e3", KSPROPSETID_Itd3d);
|
924
|
+
# define KSPROPSETID_Itd3d DEFINE_GUIDNAMED(KSPROPSETID_Itd3d)
|
925
|
+
|
926
|
+
typedef enum
|
927
|
+
{
|
928
|
+
KSPROPERTY_ITD3D_PARAMS = 0
|
929
|
+
}KSPROPERTY_ITD3D;
|
930
|
+
|
931
|
+
typedef struct
|
932
|
+
{
|
933
|
+
KSDATARANGE DataRange;
|
934
|
+
ULONG MaximumChannels;
|
935
|
+
ULONG MinimumBitsPerSample;
|
936
|
+
ULONG MaximumBitsPerSample;
|
937
|
+
ULONG MinimumSampleFrequency;
|
938
|
+
ULONG MaximumSampleFrequency;
|
939
|
+
}KSDATARANGE_AUDIO, * PKSDATARANGE_AUDIO;
|
940
|
+
|
941
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_RIFF \
|
942
|
+
0x4995DAEEL, 0x9EE6, 0x11D0, 0xA4, 0x0E, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
943
|
+
DEFINE_GUIDSTRUCT("4995DAEE-9EE6-11D0-A40E-00A0C9223196", KSDATAFORMAT_SUBTYPE_RIFF);
|
944
|
+
# define KSDATAFORMAT_SUBTYPE_RIFF DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_RIFF)
|
945
|
+
|
946
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_RIFFWAVE \
|
947
|
+
0xe436eb8bL, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70
|
948
|
+
DEFINE_GUIDSTRUCT("e436eb8b-524f-11ce-9f53-0020af0ba770", KSDATAFORMAT_SUBTYPE_RIFFWAVE);
|
949
|
+
# define KSDATAFORMAT_SUBTYPE_RIFFWAVE DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_RIFFWAVE)
|
950
|
+
|
951
|
+
# define STATIC_KSPROPSETID_Bibliographic \
|
952
|
+
0x07BA150EL, 0xE2B1, 0x11D0, 0xAC, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
953
|
+
DEFINE_GUIDSTRUCT("07BA150E-E2B1-11D0-AC17-00A0C9223196", KSPROPSETID_Bibliographic);
|
954
|
+
# define KSPROPSETID_Bibliographic DEFINE_GUIDNAMED(KSPROPSETID_Bibliographic)
|
955
|
+
|
956
|
+
# define SEB_MK_FOURCC(a, b, c, d) ((a << 24) | (b << 16) | (c << 8) | (d << 0))
|
957
|
+
|
958
|
+
typedef enum
|
959
|
+
{
|
960
|
+
KSPROPERTY_BIBLIOGRAPHIC_LEADER = SEB_MK_FOURCC('R', 'D', 'L', ' '),
|
961
|
+
KSPROPERTY_BIBLIOGRAPHIC_LCCN = SEB_MK_FOURCC('0', '1', '0', ' '),
|
962
|
+
KSPROPERTY_BIBLIOGRAPHIC_ISBN = SEB_MK_FOURCC('0', '2', '0', ' '),
|
963
|
+
KSPROPERTY_BIBLIOGRAPHIC_ISSN = SEB_MK_FOURCC('2', '2', '0', ' '),
|
964
|
+
KSPROPERTY_BIBLIOGRAPHIC_CATALOGINGSOURCE = SEB_MK_FOURCC('0', '4', '0', ' '),
|
965
|
+
KSPROPERTY_BIBLIOGRAPHIC_MAINPERSONALNAME = SEB_MK_FOURCC('0', '0', '1', ' '),
|
966
|
+
KSPROPERTY_BIBLIOGRAPHIC_MAINCORPORATEBODY = SEB_MK_FOURCC('0', '1', '1', ' '),
|
967
|
+
KSPROPERTY_BIBLIOGRAPHIC_MAINMEETINGNAME = SEB_MK_FOURCC('1', '1', '1', ' '),
|
968
|
+
KSPROPERTY_BIBLIOGRAPHIC_MAINUNIFORMTITLE = SEB_MK_FOURCC('0', '3', '1', ' '),
|
969
|
+
KSPROPERTY_BIBLIOGRAPHIC_UNIFORMTITLE = SEB_MK_FOURCC('0', '4', '2', ' '),
|
970
|
+
KSPROPERTY_BIBLIOGRAPHIC_TITLESTATEMENT = SEB_MK_FOURCC('5', '4', '2', ' '),
|
971
|
+
KSPROPERTY_BIBLIOGRAPHIC_VARYINGFORMTITLE = SEB_MK_FOURCC('6', '4', '2', ' '),
|
972
|
+
KSPROPERTY_BIBLIOGRAPHIC_PUBLICATION = SEB_MK_FOURCC('0', '6', '2', ' '),
|
973
|
+
KSPROPERTY_BIBLIOGRAPHIC_PHYSICALDESCRIPTION = SEB_MK_FOURCC('0', '0', '3', ' '),
|
974
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYTITLE = SEB_MK_FOURCC('0', '4', '4', ' '),
|
975
|
+
KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENT = SEB_MK_FOURCC('0', '9', '4', ' '),
|
976
|
+
KSPROPERTY_BIBLIOGRAPHIC_GENERALNOTE = SEB_MK_FOURCC('0', '0', '5', ' '),
|
977
|
+
KSPROPERTY_BIBLIOGRAPHIC_BIBLIOGRAPHYNOTE = SEB_MK_FOURCC('4', '0', '5', ' '),
|
978
|
+
KSPROPERTY_BIBLIOGRAPHIC_CONTENTSNOTE = SEB_MK_FOURCC('5', '0', '5', ' '),
|
979
|
+
KSPROPERTY_BIBLIOGRAPHIC_CREATIONCREDIT = SEB_MK_FOURCC('8', '0', '5', ' '),
|
980
|
+
KSPROPERTY_BIBLIOGRAPHIC_CITATION = SEB_MK_FOURCC('0', '1', '5', ' '),
|
981
|
+
KSPROPERTY_BIBLIOGRAPHIC_PARTICIPANT = SEB_MK_FOURCC('1', '1', '5', ' '),
|
982
|
+
KSPROPERTY_BIBLIOGRAPHIC_SUMMARY = SEB_MK_FOURCC('0', '2', '5', ' '),
|
983
|
+
KSPROPERTY_BIBLIOGRAPHIC_TARGETAUDIENCE = SEB_MK_FOURCC('1', '2', '5', ' '),
|
984
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDFORMAVAILABLE = SEB_MK_FOURCC('0', '3', '5', ' '),
|
985
|
+
KSPROPERTY_BIBLIOGRAPHIC_SYSTEMDETAILS = SEB_MK_FOURCC('8', '3', '5', ' '),
|
986
|
+
KSPROPERTY_BIBLIOGRAPHIC_AWARDS = SEB_MK_FOURCC('6', '8', '5', ' '),
|
987
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYPERSONALNAME = SEB_MK_FOURCC('0', '0', '6', ' '),
|
988
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYTOPICALTERM = SEB_MK_FOURCC('0', '5', '6', ' '),
|
989
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYGEOGRAPHIC = SEB_MK_FOURCC('1', '5', '6', ' '),
|
990
|
+
KSPROPERTY_BIBLIOGRAPHIC_INDEXTERMGENRE = SEB_MK_FOURCC('5', '5', '6', ' '),
|
991
|
+
KSPROPERTY_BIBLIOGRAPHIC_INDEXTERMCURRICULUM = SEB_MK_FOURCC('8', '5', '6', ' '),
|
992
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYUNIFORMTITLE = SEB_MK_FOURCC('0', '3', '7', ' '),
|
993
|
+
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYRELATED = SEB_MK_FOURCC('0', '4', '7', ' '),
|
994
|
+
KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENTPERSONALNAME = SEB_MK_FOURCC('0', '0', '8', ' '),
|
995
|
+
KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENTUNIFORMTITLE = SEB_MK_FOURCC('0', '3', '8', ' ')
|
996
|
+
}KSPROPERTY_BIBLIOGRAPHIC;
|
997
|
+
|
998
|
+
# undef SEB_MK_FOURCC
|
999
|
+
|
1000
|
+
# define STATIC_KSPROPSETID_TopologyNode \
|
1001
|
+
0x45FFAAA1L, 0x6E1B, 0x11D0, 0xBC, 0xF2, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00
|
1002
|
+
DEFINE_GUIDSTRUCT("45FFAAA1-6E1B-11D0-BCF2-444553540000", KSPROPSETID_TopologyNode);
|
1003
|
+
# define KSPROPSETID_TopologyNode DEFINE_GUIDNAMED(KSPROPSETID_TopologyNode)
|
1004
|
+
|
1005
|
+
typedef enum
|
1006
|
+
{
|
1007
|
+
KSPROPERTY_TOPOLOGYNODE_ENABLE = 1,
|
1008
|
+
KSPROPERTY_TOPOLOGYNODE_RESET
|
1009
|
+
}KSPROPERTY_TOPOLOGYNODE;
|
1010
|
+
|
1011
|
+
# define STATIC_KSPROPSETID_RtAudio \
|
1012
|
+
0xa855a48c, 0x2f78, 0x4729, 0x90, 0x51, 0x19, 0x68, 0x74, 0x6b, 0x9e, 0xef
|
1013
|
+
DEFINE_GUIDSTRUCT("A855A48C-2F78-4729-9051-1968746B9EEF", KSPROPSETID_RtAudio);
|
1014
|
+
# define KSPROPSETID_RtAudio DEFINE_GUIDNAMED(KSPROPSETID_RtAudio)
|
1015
|
+
|
1016
|
+
typedef enum
|
1017
|
+
{
|
1018
|
+
KSPROPERTY_RTAUDIO_GETPOSITIONFUNCTION
|
1019
|
+
}KSPROPERTY_RTAUDIO;
|
1020
|
+
|
1021
|
+
# define STATIC_KSPROPSETID_DrmAudioStream \
|
1022
|
+
0x2f2c8ddd, 0x4198, 0x4fac, 0xba, 0x29, 0x61, 0xbb, 0x5, 0xb7, 0xde, 0x6
|
1023
|
+
DEFINE_GUIDSTRUCT("2F2C8DDD-4198-4fac-BA29-61BB05B7DE06", KSPROPSETID_DrmAudioStream);
|
1024
|
+
# define KSPROPSETID_DrmAudioStream DEFINE_GUIDNAMED(KSPROPSETID_DrmAudioStream)
|
1025
|
+
|
1026
|
+
typedef enum
|
1027
|
+
{
|
1028
|
+
KSPROPERTY_DRMAUDIOSTREAM_CONTENTID
|
1029
|
+
}KSPROPERTY_DRMAUDIOSTREAM;
|
1030
|
+
|
1031
|
+
# define STATIC_KSPROPSETID_Audio \
|
1032
|
+
0x45FFAAA0L, 0x6E1B, 0x11D0, 0xBC, 0xF2, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00
|
1033
|
+
DEFINE_GUIDSTRUCT("45FFAAA0-6E1B-11D0-BCF2-444553540000", KSPROPSETID_Audio);
|
1034
|
+
# define KSPROPSETID_Audio DEFINE_GUIDNAMED(KSPROPSETID_Audio)
|
1035
|
+
|
1036
|
+
typedef enum
|
1037
|
+
{
|
1038
|
+
KSPROPERTY_AUDIO_LATENCY = 1,
|
1039
|
+
KSPROPERTY_AUDIO_COPY_PROTECTION,
|
1040
|
+
KSPROPERTY_AUDIO_CHANNEL_CONFIG,
|
1041
|
+
KSPROPERTY_AUDIO_VOLUMELEVEL,
|
1042
|
+
KSPROPERTY_AUDIO_POSITION,
|
1043
|
+
KSPROPERTY_AUDIO_DYNAMIC_RANGE,
|
1044
|
+
KSPROPERTY_AUDIO_QUALITY,
|
1045
|
+
KSPROPERTY_AUDIO_SAMPLING_RATE,
|
1046
|
+
KSPROPERTY_AUDIO_DYNAMIC_SAMPLING_RATE,
|
1047
|
+
KSPROPERTY_AUDIO_MIX_LEVEL_TABLE,
|
1048
|
+
KSPROPERTY_AUDIO_MIX_LEVEL_CAPS,
|
1049
|
+
KSPROPERTY_AUDIO_MUX_SOURCE,
|
1050
|
+
KSPROPERTY_AUDIO_MUTE,
|
1051
|
+
KSPROPERTY_AUDIO_BASS,
|
1052
|
+
KSPROPERTY_AUDIO_MID,
|
1053
|
+
KSPROPERTY_AUDIO_TREBLE,
|
1054
|
+
KSPROPERTY_AUDIO_BASS_BOOST,
|
1055
|
+
KSPROPERTY_AUDIO_EQ_LEVEL,
|
1056
|
+
KSPROPERTY_AUDIO_NUM_EQ_BANDS,
|
1057
|
+
KSPROPERTY_AUDIO_EQ_BANDS,
|
1058
|
+
KSPROPERTY_AUDIO_AGC,
|
1059
|
+
KSPROPERTY_AUDIO_DELAY,
|
1060
|
+
KSPROPERTY_AUDIO_LOUDNESS,
|
1061
|
+
KSPROPERTY_AUDIO_WIDE_MODE,
|
1062
|
+
KSPROPERTY_AUDIO_WIDENESS,
|
1063
|
+
KSPROPERTY_AUDIO_REVERB_LEVEL,
|
1064
|
+
KSPROPERTY_AUDIO_CHORUS_LEVEL,
|
1065
|
+
KSPROPERTY_AUDIO_DEV_SPECIFIC,
|
1066
|
+
KSPROPERTY_AUDIO_DEMUX_DEST,
|
1067
|
+
KSPROPERTY_AUDIO_STEREO_ENHANCE,
|
1068
|
+
KSPROPERTY_AUDIO_MANUFACTURE_GUID,
|
1069
|
+
KSPROPERTY_AUDIO_PRODUCT_GUID,
|
1070
|
+
KSPROPERTY_AUDIO_CPU_RESOURCES,
|
1071
|
+
KSPROPERTY_AUDIO_STEREO_SPEAKER_GEOMETRY,
|
1072
|
+
KSPROPERTY_AUDIO_SURROUND_ENCODE,
|
1073
|
+
KSPROPERTY_AUDIO_3D_INTERFACE,
|
1074
|
+
KSPROPERTY_AUDIO_PEAKMETER,
|
1075
|
+
KSPROPERTY_AUDIO_ALGORITHM_INSTANCE,
|
1076
|
+
KSPROPERTY_AUDIO_FILTER_STATE,
|
1077
|
+
KSPROPERTY_AUDIO_PREFERRED_STATUS
|
1078
|
+
}KSPROPERTY_AUDIO;
|
1079
|
+
|
1080
|
+
# define KSAUDIO_QUALITY_WORST 0x0
|
1081
|
+
# define KSAUDIO_QUALITY_PC 0x1
|
1082
|
+
# define KSAUDIO_QUALITY_BASIC 0x2
|
1083
|
+
# define KSAUDIO_QUALITY_ADVANCED 0x3
|
1084
|
+
|
1085
|
+
# define KSAUDIO_CPU_RESOURCES_NOT_HOST_CPU 0x00000000
|
1086
|
+
# define KSAUDIO_CPU_RESOURCES_HOST_CPU 0x7FFFFFFF
|
1087
|
+
|
1088
|
+
typedef struct
|
1089
|
+
{
|
1090
|
+
WINBOOL fCopyrighted;
|
1091
|
+
WINBOOL fOriginal;
|
1092
|
+
}KSAUDIO_COPY_PROTECTION, * PKSAUDIO_COPY_PROTECTION;
|
1093
|
+
|
1094
|
+
typedef struct
|
1095
|
+
{
|
1096
|
+
LONG ActiveSpeakerPositions;
|
1097
|
+
}KSAUDIO_CHANNEL_CONFIG, * PKSAUDIO_CHANNEL_CONFIG;
|
1098
|
+
|
1099
|
+
# define SPEAKER_FRONT_LEFT 0x1
|
1100
|
+
# define SPEAKER_FRONT_RIGHT 0x2
|
1101
|
+
# define SPEAKER_FRONT_CENTER 0x4
|
1102
|
+
# define SPEAKER_LOW_FREQUENCY 0x8
|
1103
|
+
# define SPEAKER_BACK_LEFT 0x10
|
1104
|
+
# define SPEAKER_BACK_RIGHT 0x20
|
1105
|
+
# define SPEAKER_FRONT_LEFT_OF_CENTER 0x40
|
1106
|
+
# define SPEAKER_FRONT_RIGHT_OF_CENTER 0x80
|
1107
|
+
# define SPEAKER_BACK_CENTER 0x100
|
1108
|
+
# define SPEAKER_SIDE_LEFT 0x200
|
1109
|
+
# define SPEAKER_SIDE_RIGHT 0x400
|
1110
|
+
# define SPEAKER_TOP_CENTER 0x800
|
1111
|
+
# define SPEAKER_TOP_FRONT_LEFT 0x1000
|
1112
|
+
# define SPEAKER_TOP_FRONT_CENTER 0x2000
|
1113
|
+
# define SPEAKER_TOP_FRONT_RIGHT 0x4000
|
1114
|
+
# define SPEAKER_TOP_BACK_LEFT 0x8000
|
1115
|
+
# define SPEAKER_TOP_BACK_CENTER 0x10000
|
1116
|
+
# define SPEAKER_TOP_BACK_RIGHT 0x20000
|
1117
|
+
|
1118
|
+
# define SPEAKER_RESERVED 0x7FFC0000
|
1119
|
+
|
1120
|
+
# define SPEAKER_ALL 0x80000000
|
1121
|
+
|
1122
|
+
# define KSAUDIO_SPEAKER_DIRECTOUT 0
|
1123
|
+
# define KSAUDIO_SPEAKER_MONO (SPEAKER_FRONT_CENTER)
|
1124
|
+
# define KSAUDIO_SPEAKER_STEREO (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT)
|
1125
|
+
# define KSAUDIO_SPEAKER_QUAD (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
|
1126
|
+
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT)
|
1127
|
+
# define KSAUDIO_SPEAKER_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
|
1128
|
+
SPEAKER_FRONT_CENTER | SPEAKER_BACK_CENTER)
|
1129
|
+
# define KSAUDIO_SPEAKER_5POINT1 (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
|
1130
|
+
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
|
1131
|
+
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT)
|
1132
|
+
# define KSAUDIO_SPEAKER_7POINT1 (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
|
1133
|
+
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
|
1134
|
+
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT | \
|
1135
|
+
SPEAKER_FRONT_LEFT_OF_CENTER | SPEAKER_FRONT_RIGHT_OF_CENTER)
|
1136
|
+
# define KSAUDIO_SPEAKER_5POINT1_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
|
1137
|
+
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
|
1138
|
+
SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT)
|
1139
|
+
# define KSAUDIO_SPEAKER_7POINT1_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
|
1140
|
+
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
|
1141
|
+
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT | \
|
1142
|
+
SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT)
|
1143
|
+
|
1144
|
+
# define KSAUDIO_SPEAKER_5POINT1_BACK KSAUDIO_SPEAKER_5POINT1
|
1145
|
+
# define KSAUDIO_SPEAKER_7POINT1_WIDE KSAUDIO_SPEAKER_7POINT1
|
1146
|
+
|
1147
|
+
# define KSAUDIO_SPEAKER_GROUND_FRONT_LEFT SPEAKER_FRONT_LEFT
|
1148
|
+
# define KSAUDIO_SPEAKER_GROUND_FRONT_CENTER SPEAKER_FRONT_CENTER
|
1149
|
+
# define KSAUDIO_SPEAKER_GROUND_FRONT_RIGHT SPEAKER_FRONT_RIGHT
|
1150
|
+
# define KSAUDIO_SPEAKER_GROUND_REAR_LEFT SPEAKER_BACK_LEFT
|
1151
|
+
# define KSAUDIO_SPEAKER_GROUND_REAR_RIGHT SPEAKER_BACK_RIGHT
|
1152
|
+
# define KSAUDIO_SPEAKER_TOP_MIDDLE SPEAKER_TOP_CENTER
|
1153
|
+
# define KSAUDIO_SPEAKER_SUPER_WOOFER SPEAKER_LOW_FREQUENCY
|
1154
|
+
|
1155
|
+
typedef struct
|
1156
|
+
{
|
1157
|
+
ULONG QuietCompression;
|
1158
|
+
ULONG LoudCompression;
|
1159
|
+
}KSAUDIO_DYNAMIC_RANGE, * PKSAUDIO_DYNAMIC_RANGE;
|
1160
|
+
|
1161
|
+
typedef struct
|
1162
|
+
{
|
1163
|
+
WINBOOL Mute;
|
1164
|
+
LONG Level;
|
1165
|
+
}KSAUDIO_MIXLEVEL, * PKSAUDIO_MIXLEVEL;
|
1166
|
+
|
1167
|
+
typedef struct
|
1168
|
+
{
|
1169
|
+
WINBOOL Mute;
|
1170
|
+
LONG Minimum;
|
1171
|
+
LONG Maximum;
|
1172
|
+
LONG Reset;
|
1173
|
+
}KSAUDIO_MIX_CAPS, * PKSAUDIO_MIX_CAPS;
|
1174
|
+
|
1175
|
+
typedef struct
|
1176
|
+
{
|
1177
|
+
ULONG InputChannels;
|
1178
|
+
ULONG OutputChannels;
|
1179
|
+
KSAUDIO_MIX_CAPS Capabilities[1];
|
1180
|
+
}KSAUDIO_MIXCAP_TABLE, * PKSAUDIO_MIXCAP_TABLE;
|
1181
|
+
|
1182
|
+
typedef enum
|
1183
|
+
{
|
1184
|
+
SE_TECH_NONE,
|
1185
|
+
SE_TECH_ANALOG_DEVICES_PHAT,
|
1186
|
+
SE_TECH_CREATIVE,
|
1187
|
+
SE_TECH_NATIONAL_SEMI,
|
1188
|
+
SE_TECH_YAMAHA_YMERSION,
|
1189
|
+
SE_TECH_BBE,
|
1190
|
+
SE_TECH_CRYSTAL_SEMI,
|
1191
|
+
SE_TECH_QSOUND_QXPANDER,
|
1192
|
+
SE_TECH_SPATIALIZER,
|
1193
|
+
SE_TECH_SRS,
|
1194
|
+
SE_TECH_PLATFORM_TECH,
|
1195
|
+
SE_TECH_AKM,
|
1196
|
+
SE_TECH_AUREAL,
|
1197
|
+
SE_TECH_AZTECH,
|
1198
|
+
SE_TECH_BINAURA,
|
1199
|
+
SE_TECH_ESS_TECH,
|
1200
|
+
SE_TECH_HARMAN_VMAX,
|
1201
|
+
SE_TECH_NVIDEA,
|
1202
|
+
SE_TECH_PHILIPS_INCREDIBLE,
|
1203
|
+
SE_TECH_TEXAS_INST,
|
1204
|
+
SE_TECH_VLSI_TECH
|
1205
|
+
}SE_TECHNIQUE;
|
1206
|
+
|
1207
|
+
typedef struct
|
1208
|
+
{
|
1209
|
+
SE_TECHNIQUE Technique;
|
1210
|
+
ULONG Center;
|
1211
|
+
ULONG Depth;
|
1212
|
+
ULONG Reserved;
|
1213
|
+
}KSAUDIO_STEREO_ENHANCE, * PKSAUDIO_STEREO_ENHANCE;
|
1214
|
+
|
1215
|
+
typedef enum
|
1216
|
+
{
|
1217
|
+
KSPROPERTY_SYSAUDIO_NORMAL_DEFAULT = 0,
|
1218
|
+
KSPROPERTY_SYSAUDIO_PLAYBACK_DEFAULT,
|
1219
|
+
KSPROPERTY_SYSAUDIO_RECORD_DEFAULT,
|
1220
|
+
KSPROPERTY_SYSAUDIO_MIDI_DEFAULT,
|
1221
|
+
KSPROPERTY_SYSAUDIO_MIXER_DEFAULT
|
1222
|
+
}KSPROPERTY_SYSAUDIO_DEFAULT_TYPE;
|
1223
|
+
|
1224
|
+
typedef struct
|
1225
|
+
{
|
1226
|
+
WINBOOL Enable;
|
1227
|
+
KSPROPERTY_SYSAUDIO_DEFAULT_TYPE DeviceType;
|
1228
|
+
ULONG Flags;
|
1229
|
+
ULONG Reserved;
|
1230
|
+
}KSAUDIO_PREFERRED_STATUS, * PKSAUDIO_PREFERRED_STATUS;
|
1231
|
+
|
1232
|
+
# define STATIC_KSNODETYPE_DAC \
|
1233
|
+
0x507AE360L, 0xC554, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1234
|
+
DEFINE_GUIDSTRUCT("507AE360-C554-11D0-8A2B-00A0C9255AC1", KSNODETYPE_DAC);
|
1235
|
+
# define KSNODETYPE_DAC DEFINE_GUIDNAMED(KSNODETYPE_DAC)
|
1236
|
+
|
1237
|
+
# define STATIC_KSNODETYPE_ADC \
|
1238
|
+
0x4D837FE0L, 0xC555, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1239
|
+
DEFINE_GUIDSTRUCT("4D837FE0-C555-11D0-8A2B-00A0C9255AC1", KSNODETYPE_ADC);
|
1240
|
+
# define KSNODETYPE_ADC DEFINE_GUIDNAMED(KSNODETYPE_ADC)
|
1241
|
+
|
1242
|
+
# define STATIC_KSNODETYPE_SRC \
|
1243
|
+
0x9DB7B9E0L, 0xC555, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1244
|
+
DEFINE_GUIDSTRUCT("9DB7B9E0-C555-11D0-8A2B-00A0C9255AC1", KSNODETYPE_SRC);
|
1245
|
+
# define KSNODETYPE_SRC DEFINE_GUIDNAMED(KSNODETYPE_SRC)
|
1246
|
+
|
1247
|
+
# define STATIC_KSNODETYPE_SUPERMIX \
|
1248
|
+
0xE573ADC0L, 0xC555, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1249
|
+
DEFINE_GUIDSTRUCT("E573ADC0-C555-11D0-8A2B-00A0C9255AC1", KSNODETYPE_SUPERMIX);
|
1250
|
+
# define KSNODETYPE_SUPERMIX DEFINE_GUIDNAMED(KSNODETYPE_SUPERMIX)
|
1251
|
+
|
1252
|
+
# define STATIC_KSNODETYPE_MUX \
|
1253
|
+
0x2CEAF780L, 0xC556, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1254
|
+
DEFINE_GUIDSTRUCT("2CEAF780-C556-11D0-8A2B-00A0C9255AC1", KSNODETYPE_MUX);
|
1255
|
+
# define KSNODETYPE_MUX DEFINE_GUIDNAMED(KSNODETYPE_MUX)
|
1256
|
+
|
1257
|
+
# define STATIC_KSNODETYPE_DEMUX \
|
1258
|
+
0xC0EB67D4L, 0xE807, 0x11D0, 0x95, 0x8A, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1259
|
+
DEFINE_GUIDSTRUCT("C0EB67D4-E807-11D0-958A-00C04FB925D3", KSNODETYPE_DEMUX);
|
1260
|
+
# define KSNODETYPE_DEMUX DEFINE_GUIDNAMED(KSNODETYPE_DEMUX)
|
1261
|
+
|
1262
|
+
# define STATIC_KSNODETYPE_SUM \
|
1263
|
+
0xDA441A60L, 0xC556, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1264
|
+
DEFINE_GUIDSTRUCT("DA441A60-C556-11D0-8A2B-00A0C9255AC1", KSNODETYPE_SUM);
|
1265
|
+
# define KSNODETYPE_SUM DEFINE_GUIDNAMED(KSNODETYPE_SUM)
|
1266
|
+
|
1267
|
+
# define STATIC_KSNODETYPE_MUTE \
|
1268
|
+
0x02B223C0L, 0xC557, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1269
|
+
DEFINE_GUIDSTRUCT("02B223C0-C557-11D0-8A2B-00A0C9255AC1", KSNODETYPE_MUTE);
|
1270
|
+
# define KSNODETYPE_MUTE DEFINE_GUIDNAMED(KSNODETYPE_MUTE)
|
1271
|
+
|
1272
|
+
# define STATIC_KSNODETYPE_VOLUME \
|
1273
|
+
0x3A5ACC00L, 0xC557, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1274
|
+
DEFINE_GUIDSTRUCT("3A5ACC00-C557-11D0-8A2B-00A0C9255AC1", KSNODETYPE_VOLUME);
|
1275
|
+
# define KSNODETYPE_VOLUME DEFINE_GUIDNAMED(KSNODETYPE_VOLUME)
|
1276
|
+
|
1277
|
+
# define STATIC_KSNODETYPE_TONE \
|
1278
|
+
0x7607E580L, 0xC557, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1279
|
+
DEFINE_GUIDSTRUCT("7607E580-C557-11D0-8A2B-00A0C9255AC1", KSNODETYPE_TONE);
|
1280
|
+
# define KSNODETYPE_TONE DEFINE_GUIDNAMED(KSNODETYPE_TONE)
|
1281
|
+
|
1282
|
+
# define STATIC_KSNODETYPE_EQUALIZER \
|
1283
|
+
0x9D41B4A0L, 0xC557, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1284
|
+
DEFINE_GUIDSTRUCT("9D41B4A0-C557-11D0-8A2B-00A0C9255AC1", KSNODETYPE_EQUALIZER);
|
1285
|
+
# define KSNODETYPE_EQUALIZER DEFINE_GUIDNAMED(KSNODETYPE_EQUALIZER)
|
1286
|
+
|
1287
|
+
# define STATIC_KSNODETYPE_AGC \
|
1288
|
+
0xE88C9BA0L, 0xC557, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1289
|
+
DEFINE_GUIDSTRUCT("E88C9BA0-C557-11D0-8A2B-00A0C9255AC1", KSNODETYPE_AGC);
|
1290
|
+
# define KSNODETYPE_AGC DEFINE_GUIDNAMED(KSNODETYPE_AGC)
|
1291
|
+
|
1292
|
+
# define STATIC_KSNODETYPE_NOISE_SUPPRESS \
|
1293
|
+
0xe07f903f, 0x62fd, 0x4e60, 0x8c, 0xdd, 0xde, 0xa7, 0x23, 0x66, 0x65, 0xb5
|
1294
|
+
DEFINE_GUIDSTRUCT("E07F903F-62FD-4e60-8CDD-DEA7236665B5", KSNODETYPE_NOISE_SUPPRESS);
|
1295
|
+
# define KSNODETYPE_NOISE_SUPPRESS DEFINE_GUIDNAMED(KSNODETYPE_NOISE_SUPPRESS)
|
1296
|
+
|
1297
|
+
# define STATIC_KSNODETYPE_DELAY \
|
1298
|
+
0x144981E0L, 0xC558, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1299
|
+
DEFINE_GUIDSTRUCT("144981E0-C558-11D0-8A2B-00A0C9255AC1", KSNODETYPE_DELAY);
|
1300
|
+
# define KSNODETYPE_DELAY DEFINE_GUIDNAMED(KSNODETYPE_DELAY)
|
1301
|
+
|
1302
|
+
# define STATIC_KSNODETYPE_LOUDNESS \
|
1303
|
+
0x41887440L, 0xC558, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1304
|
+
DEFINE_GUIDSTRUCT("41887440-C558-11D0-8A2B-00A0C9255AC1", KSNODETYPE_LOUDNESS);
|
1305
|
+
# define KSNODETYPE_LOUDNESS DEFINE_GUIDNAMED(KSNODETYPE_LOUDNESS)
|
1306
|
+
|
1307
|
+
# define STATIC_KSNODETYPE_PROLOGIC_DECODER \
|
1308
|
+
0x831C2C80L, 0xC558, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1309
|
+
DEFINE_GUIDSTRUCT("831C2C80-C558-11D0-8A2B-00A0C9255AC1", KSNODETYPE_PROLOGIC_DECODER);
|
1310
|
+
# define KSNODETYPE_PROLOGIC_DECODER DEFINE_GUIDNAMED(KSNODETYPE_PROLOGIC_DECODER)
|
1311
|
+
|
1312
|
+
# define STATIC_KSNODETYPE_STEREO_WIDE \
|
1313
|
+
0xA9E69800L, 0xC558, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1314
|
+
DEFINE_GUIDSTRUCT("A9E69800-C558-11D0-8A2B-00A0C9255AC1", KSNODETYPE_STEREO_WIDE);
|
1315
|
+
# define KSNODETYPE_STEREO_WIDE DEFINE_GUIDNAMED(KSNODETYPE_STEREO_WIDE)
|
1316
|
+
|
1317
|
+
# define STATIC_KSNODETYPE_STEREO_ENHANCE \
|
1318
|
+
0xAF6878ACL, 0xE83F, 0x11D0, 0x95, 0x8A, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1319
|
+
DEFINE_GUIDSTRUCT("AF6878AC-E83F-11D0-958A-00C04FB925D3", KSNODETYPE_STEREO_ENHANCE);
|
1320
|
+
# define KSNODETYPE_STEREO_ENHANCE DEFINE_GUIDNAMED(KSNODETYPE_STEREO_ENHANCE)
|
1321
|
+
|
1322
|
+
# define STATIC_KSNODETYPE_REVERB \
|
1323
|
+
0xEF0328E0L, 0xC558, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1324
|
+
DEFINE_GUIDSTRUCT("EF0328E0-C558-11D0-8A2B-00A0C9255AC1", KSNODETYPE_REVERB);
|
1325
|
+
# define KSNODETYPE_REVERB DEFINE_GUIDNAMED(KSNODETYPE_REVERB)
|
1326
|
+
|
1327
|
+
# define STATIC_KSNODETYPE_CHORUS \
|
1328
|
+
0x20173F20L, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1329
|
+
DEFINE_GUIDSTRUCT("20173F20-C559-11D0-8A2B-00A0C9255AC1", KSNODETYPE_CHORUS);
|
1330
|
+
# define KSNODETYPE_CHORUS DEFINE_GUIDNAMED(KSNODETYPE_CHORUS)
|
1331
|
+
|
1332
|
+
# define STATIC_KSNODETYPE_3D_EFFECTS \
|
1333
|
+
0x55515860L, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1334
|
+
DEFINE_GUIDSTRUCT("55515860-C559-11D0-8A2B-00A0C9255AC1", KSNODETYPE_3D_EFFECTS);
|
1335
|
+
# define KSNODETYPE_3D_EFFECTS DEFINE_GUIDNAMED(KSNODETYPE_3D_EFFECTS)
|
1336
|
+
|
1337
|
+
# define STATIC_KSNODETYPE_ACOUSTIC_ECHO_CANCEL STATIC_KSCATEGORY_ACOUSTIC_ECHO_CANCEL
|
1338
|
+
# define KSNODETYPE_ACOUSTIC_ECHO_CANCEL KSCATEGORY_ACOUSTIC_ECHO_CANCEL
|
1339
|
+
|
1340
|
+
# define STATIC_KSALGORITHMINSTANCE_SYSTEM_ACOUSTIC_ECHO_CANCEL \
|
1341
|
+
0x1c22c56dL, 0x9879, 0x4f5b, 0xa3, 0x89, 0x27, 0x99, 0x6d, 0xdc, 0x28, 0x10
|
1342
|
+
DEFINE_GUIDSTRUCT("1C22C56D-9879-4f5b-A389-27996DDC2810", KSALGORITHMINSTANCE_SYSTEM_ACOUSTIC_ECHO_CANCEL);
|
1343
|
+
# define KSALGORITHMINSTANCE_SYSTEM_ACOUSTIC_ECHO_CANCEL DEFINE_GUIDNAMED(KSALGORITHMINSTANCE_SYSTEM_ACOUSTIC_ECHO_CANCEL)
|
1344
|
+
|
1345
|
+
# define STATIC_KSALGORITHMINSTANCE_SYSTEM_NOISE_SUPPRESS \
|
1346
|
+
0x5ab0882eL, 0x7274, 0x4516, 0x87, 0x7d, 0x4e, 0xee, 0x99, 0xba, 0x4f, 0xd0
|
1347
|
+
DEFINE_GUIDSTRUCT("5AB0882E-7274-4516-877D-4EEE99BA4FD0", KSALGORITHMINSTANCE_SYSTEM_NOISE_SUPPRESS);
|
1348
|
+
# define KSALGORITHMINSTANCE_SYSTEM_NOISE_SUPPRESS DEFINE_GUIDNAMED(KSALGORITHMINSTANCE_SYSTEM_NOISE_SUPPRESS)
|
1349
|
+
|
1350
|
+
# define STATIC_KSALGORITHMINSTANCE_SYSTEM_AGC \
|
1351
|
+
0x950e55b9L, 0x877c, 0x4c67, 0xbe, 0x8, 0xe4, 0x7b, 0x56, 0x11, 0x13, 0xa
|
1352
|
+
DEFINE_GUIDSTRUCT("950E55B9-877C-4c67-BE08-E47B5611130A", KSALGORITHMINSTANCE_SYSTEM_AGC);
|
1353
|
+
# define KSALGORITHMINSTANCE_SYSTEM_AGC DEFINE_GUIDNAMED(KSALGORITHMINSTANCE_SYSTEM_AGC)
|
1354
|
+
|
1355
|
+
# define STATIC_KSALGORITHMINSTANCE_SYSTEM_MICROPHONE_ARRAY_PROCESSOR \
|
1356
|
+
0xB6F5A0A0L, 0x9E61, 0x4F8C, 0x91, 0xE3, 0x76, 0xCF, 0xF, 0x3C, 0x47, 0x1F
|
1357
|
+
DEFINE_GUIDSTRUCT("B6F5A0A0-9E61-4f8c-91E3-76CF0F3C471F", KSALGORITHMINSTANCE_SYSTEM_MICROPHONE_ARRAY_PROCESSOR);
|
1358
|
+
# define KSALGORITHMINSTANCE_SYSTEM_MICROPHONE_ARRAY_PROCESSOR DEFINE_GUIDNAMED(KSALGORITHMINSTANCE_SYSTEM_MICROPHONE_ARRAY_PROCESSOR)
|
1359
|
+
|
1360
|
+
# define STATIC_KSNODETYPE_MICROPHONE_ARRAY_PROCESSOR STATIC_KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR
|
1361
|
+
# define KSNODETYPE_MICROPHONE_ARRAY_PROCESSOR KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR
|
1362
|
+
|
1363
|
+
# define STATIC_KSNODETYPE_DEV_SPECIFIC \
|
1364
|
+
0x941C7AC0L, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1
|
1365
|
+
DEFINE_GUIDSTRUCT("941C7AC0-C559-11D0-8A2B-00A0C9255AC1", KSNODETYPE_DEV_SPECIFIC);
|
1366
|
+
# define KSNODETYPE_DEV_SPECIFIC DEFINE_GUIDNAMED(KSNODETYPE_DEV_SPECIFIC)
|
1367
|
+
|
1368
|
+
# define STATIC_KSNODETYPE_PROLOGIC_ENCODER \
|
1369
|
+
0x8074C5B2L, 0x3C66, 0x11D2, 0xB4, 0x5A, 0x30, 0x78, 0x30, 0x2C, 0x20, 0x30
|
1370
|
+
DEFINE_GUIDSTRUCT("8074C5B2-3C66-11D2-B45A-3078302C2030", KSNODETYPE_PROLOGIC_ENCODER);
|
1371
|
+
# define KSNODETYPE_PROLOGIC_ENCODER DEFINE_GUIDNAMED(KSNODETYPE_PROLOGIC_ENCODER)
|
1372
|
+
# define KSNODETYPE_SURROUND_ENCODER KSNODETYPE_PROLOGIC_ENCODER
|
1373
|
+
|
1374
|
+
# define STATIC_KSNODETYPE_PEAKMETER \
|
1375
|
+
0xa085651eL, 0x5f0d, 0x4b36, 0xa8, 0x69, 0xd1, 0x95, 0xd6, 0xab, 0x4b, 0x9e
|
1376
|
+
DEFINE_GUIDSTRUCT("A085651E-5F0D-4b36-A869-D195D6AB4B9E", KSNODETYPE_PEAKMETER);
|
1377
|
+
# define KSNODETYPE_PEAKMETER DEFINE_GUIDNAMED(KSNODETYPE_PEAKMETER)
|
1378
|
+
|
1379
|
+
# define STATIC_KSAUDFNAME_BASS \
|
1380
|
+
0x185FEDE0L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1381
|
+
DEFINE_GUIDSTRUCT("185FEDE0-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_BASS);
|
1382
|
+
# define KSAUDFNAME_BASS DEFINE_GUIDNAMED(KSAUDFNAME_BASS)
|
1383
|
+
|
1384
|
+
# define STATIC_KSAUDFNAME_TREBLE \
|
1385
|
+
0x185FEDE1L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1386
|
+
DEFINE_GUIDSTRUCT("185FEDE1-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_TREBLE);
|
1387
|
+
# define KSAUDFNAME_TREBLE DEFINE_GUIDNAMED(KSAUDFNAME_TREBLE)
|
1388
|
+
|
1389
|
+
# define STATIC_KSAUDFNAME_3D_STEREO \
|
1390
|
+
0x185FEDE2L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1391
|
+
DEFINE_GUIDSTRUCT("185FEDE2-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_3D_STEREO);
|
1392
|
+
# define KSAUDFNAME_3D_STEREO DEFINE_GUIDNAMED(KSAUDFNAME_3D_STEREO)
|
1393
|
+
|
1394
|
+
# define STATIC_KSAUDFNAME_MASTER_VOLUME \
|
1395
|
+
0x185FEDE3L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1396
|
+
DEFINE_GUIDSTRUCT("185FEDE3-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MASTER_VOLUME);
|
1397
|
+
# define KSAUDFNAME_MASTER_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MASTER_VOLUME)
|
1398
|
+
|
1399
|
+
# define STATIC_KSAUDFNAME_MASTER_MUTE \
|
1400
|
+
0x185FEDE4L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1401
|
+
DEFINE_GUIDSTRUCT("185FEDE4-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MASTER_MUTE);
|
1402
|
+
# define KSAUDFNAME_MASTER_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_MASTER_MUTE)
|
1403
|
+
|
1404
|
+
# define STATIC_KSAUDFNAME_WAVE_VOLUME \
|
1405
|
+
0x185FEDE5L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1406
|
+
DEFINE_GUIDSTRUCT("185FEDE5-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_WAVE_VOLUME);
|
1407
|
+
# define KSAUDFNAME_WAVE_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_WAVE_VOLUME)
|
1408
|
+
|
1409
|
+
# define STATIC_KSAUDFNAME_WAVE_MUTE \
|
1410
|
+
0x185FEDE6L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1411
|
+
DEFINE_GUIDSTRUCT("185FEDE6-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_WAVE_MUTE);
|
1412
|
+
# define KSAUDFNAME_WAVE_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_WAVE_MUTE)
|
1413
|
+
|
1414
|
+
# define STATIC_KSAUDFNAME_MIDI_VOLUME \
|
1415
|
+
0x185FEDE7L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1416
|
+
DEFINE_GUIDSTRUCT("185FEDE7-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIDI_VOLUME);
|
1417
|
+
# define KSAUDFNAME_MIDI_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MIDI_VOLUME)
|
1418
|
+
|
1419
|
+
# define STATIC_KSAUDFNAME_MIDI_MUTE \
|
1420
|
+
0x185FEDE8L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1421
|
+
DEFINE_GUIDSTRUCT("185FEDE8-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIDI_MUTE);
|
1422
|
+
# define KSAUDFNAME_MIDI_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_MIDI_MUTE)
|
1423
|
+
|
1424
|
+
# define STATIC_KSAUDFNAME_CD_VOLUME \
|
1425
|
+
0x185FEDE9L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1426
|
+
DEFINE_GUIDSTRUCT("185FEDE9-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_CD_VOLUME);
|
1427
|
+
# define KSAUDFNAME_CD_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_CD_VOLUME)
|
1428
|
+
|
1429
|
+
# define STATIC_KSAUDFNAME_CD_MUTE \
|
1430
|
+
0x185FEDEAL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1431
|
+
DEFINE_GUIDSTRUCT("185FEDEA-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_CD_MUTE);
|
1432
|
+
# define KSAUDFNAME_CD_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_CD_MUTE)
|
1433
|
+
|
1434
|
+
# define STATIC_KSAUDFNAME_LINE_VOLUME \
|
1435
|
+
0x185FEDEBL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1436
|
+
DEFINE_GUIDSTRUCT("185FEDEB-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_LINE_VOLUME);
|
1437
|
+
# define KSAUDFNAME_LINE_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_LINE_VOLUME)
|
1438
|
+
|
1439
|
+
# define STATIC_KSAUDFNAME_LINE_MUTE \
|
1440
|
+
0x185FEDECL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1441
|
+
DEFINE_GUIDSTRUCT("185FEDEC-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_LINE_MUTE);
|
1442
|
+
# define KSAUDFNAME_LINE_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_LINE_MUTE)
|
1443
|
+
|
1444
|
+
# define STATIC_KSAUDFNAME_MIC_VOLUME \
|
1445
|
+
0x185FEDEDL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1446
|
+
DEFINE_GUIDSTRUCT("185FEDED-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIC_VOLUME);
|
1447
|
+
# define KSAUDFNAME_MIC_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MIC_VOLUME)
|
1448
|
+
|
1449
|
+
# define STATIC_KSAUDFNAME_MIC_MUTE \
|
1450
|
+
0x185FEDEEL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1451
|
+
DEFINE_GUIDSTRUCT("185FEDEE-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIC_MUTE);
|
1452
|
+
# define KSAUDFNAME_MIC_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_MIC_MUTE)
|
1453
|
+
|
1454
|
+
# define STATIC_KSAUDFNAME_RECORDING_SOURCE \
|
1455
|
+
0x185FEDEFL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1456
|
+
DEFINE_GUIDSTRUCT("185FEDEF-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_RECORDING_SOURCE);
|
1457
|
+
# define KSAUDFNAME_RECORDING_SOURCE DEFINE_GUIDNAMED(KSAUDFNAME_RECORDING_SOURCE)
|
1458
|
+
|
1459
|
+
# define STATIC_KSAUDFNAME_PC_SPEAKER_VOLUME \
|
1460
|
+
0x185FEDF0L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1461
|
+
DEFINE_GUIDSTRUCT("185FEDF0-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_PC_SPEAKER_VOLUME);
|
1462
|
+
# define KSAUDFNAME_PC_SPEAKER_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_PC_SPEAKER_VOLUME)
|
1463
|
+
|
1464
|
+
# define STATIC_KSAUDFNAME_PC_SPEAKER_MUTE \
|
1465
|
+
0x185FEDF1L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1466
|
+
DEFINE_GUIDSTRUCT("185FEDF1-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_PC_SPEAKER_MUTE);
|
1467
|
+
# define KSAUDFNAME_PC_SPEAKER_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_PC_SPEAKER_MUTE)
|
1468
|
+
|
1469
|
+
# define STATIC_KSAUDFNAME_MIDI_IN_VOLUME \
|
1470
|
+
0x185FEDF2L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1471
|
+
DEFINE_GUIDSTRUCT("185FEDF2-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIDI_IN_VOLUME);
|
1472
|
+
# define KSAUDFNAME_MIDI_IN_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MIDI_IN_VOLUME)
|
1473
|
+
|
1474
|
+
# define STATIC_KSAUDFNAME_CD_IN_VOLUME \
|
1475
|
+
0x185FEDF3L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1476
|
+
DEFINE_GUIDSTRUCT("185FEDF3-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_CD_IN_VOLUME);
|
1477
|
+
# define KSAUDFNAME_CD_IN_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_CD_IN_VOLUME)
|
1478
|
+
|
1479
|
+
# define STATIC_KSAUDFNAME_LINE_IN_VOLUME \
|
1480
|
+
0x185FEDF4L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1481
|
+
DEFINE_GUIDSTRUCT("185FEDF4-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_LINE_IN_VOLUME);
|
1482
|
+
# define KSAUDFNAME_LINE_IN_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_LINE_IN_VOLUME)
|
1483
|
+
|
1484
|
+
# define STATIC_KSAUDFNAME_MIC_IN_VOLUME \
|
1485
|
+
0x185FEDF5L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1486
|
+
DEFINE_GUIDSTRUCT("185FEDF5-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIC_IN_VOLUME);
|
1487
|
+
# define KSAUDFNAME_MIC_IN_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MIC_IN_VOLUME)
|
1488
|
+
|
1489
|
+
# define STATIC_KSAUDFNAME_WAVE_IN_VOLUME \
|
1490
|
+
0x185FEDF6L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1491
|
+
DEFINE_GUIDSTRUCT("185FEDF6-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_WAVE_IN_VOLUME);
|
1492
|
+
# define KSAUDFNAME_WAVE_IN_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_WAVE_IN_VOLUME)
|
1493
|
+
|
1494
|
+
# define STATIC_KSAUDFNAME_VOLUME_CONTROL \
|
1495
|
+
0x185FEDF7L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1496
|
+
DEFINE_GUIDSTRUCT("185FEDF7-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_VOLUME_CONTROL);
|
1497
|
+
# define KSAUDFNAME_VOLUME_CONTROL DEFINE_GUIDNAMED(KSAUDFNAME_VOLUME_CONTROL)
|
1498
|
+
|
1499
|
+
# define STATIC_KSAUDFNAME_MIDI \
|
1500
|
+
0x185FEDF8L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1501
|
+
DEFINE_GUIDSTRUCT("185FEDF8-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_MIDI);
|
1502
|
+
# define KSAUDFNAME_MIDI DEFINE_GUIDNAMED(KSAUDFNAME_MIDI)
|
1503
|
+
|
1504
|
+
# define STATIC_KSAUDFNAME_LINE_IN \
|
1505
|
+
0x185FEDF9L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1506
|
+
DEFINE_GUIDSTRUCT("185FEDF9-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_LINE_IN);
|
1507
|
+
# define KSAUDFNAME_LINE_IN DEFINE_GUIDNAMED(KSAUDFNAME_LINE_IN)
|
1508
|
+
|
1509
|
+
# define STATIC_KSAUDFNAME_RECORDING_CONTROL \
|
1510
|
+
0x185FEDFAL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1511
|
+
DEFINE_GUIDSTRUCT("185FEDFA-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_RECORDING_CONTROL);
|
1512
|
+
# define KSAUDFNAME_RECORDING_CONTROL DEFINE_GUIDNAMED(KSAUDFNAME_RECORDING_CONTROL)
|
1513
|
+
|
1514
|
+
# define STATIC_KSAUDFNAME_CD_AUDIO \
|
1515
|
+
0x185FEDFBL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1516
|
+
DEFINE_GUIDSTRUCT("185FEDFB-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_CD_AUDIO);
|
1517
|
+
# define KSAUDFNAME_CD_AUDIO DEFINE_GUIDNAMED(KSAUDFNAME_CD_AUDIO)
|
1518
|
+
|
1519
|
+
# define STATIC_KSAUDFNAME_AUX_VOLUME \
|
1520
|
+
0x185FEDFCL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1521
|
+
DEFINE_GUIDSTRUCT("185FEDFC-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_AUX_VOLUME);
|
1522
|
+
# define KSAUDFNAME_AUX_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_AUX_VOLUME)
|
1523
|
+
|
1524
|
+
# define STATIC_KSAUDFNAME_AUX_MUTE \
|
1525
|
+
0x185FEDFDL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1526
|
+
DEFINE_GUIDSTRUCT("185FEDFD-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_AUX_MUTE);
|
1527
|
+
# define KSAUDFNAME_AUX_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_AUX_MUTE)
|
1528
|
+
|
1529
|
+
# define STATIC_KSAUDFNAME_AUX \
|
1530
|
+
0x185FEDFEL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1531
|
+
DEFINE_GUIDSTRUCT("185FEDFE-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_AUX);
|
1532
|
+
# define KSAUDFNAME_AUX DEFINE_GUIDNAMED(KSAUDFNAME_AUX)
|
1533
|
+
|
1534
|
+
# define STATIC_KSAUDFNAME_PC_SPEAKER \
|
1535
|
+
0x185FEDFFL, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1536
|
+
DEFINE_GUIDSTRUCT("185FEDFF-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_PC_SPEAKER);
|
1537
|
+
# define KSAUDFNAME_PC_SPEAKER DEFINE_GUIDNAMED(KSAUDFNAME_PC_SPEAKER)
|
1538
|
+
|
1539
|
+
# define STATIC_KSAUDFNAME_WAVE_OUT_MIX \
|
1540
|
+
0x185FEE00L, 0x9905, 0x11D1, 0x95, 0xA9, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1541
|
+
DEFINE_GUIDSTRUCT("185FEE00-9905-11D1-95A9-00C04FB925D3", KSAUDFNAME_WAVE_OUT_MIX);
|
1542
|
+
# define KSAUDFNAME_WAVE_OUT_MIX DEFINE_GUIDNAMED(KSAUDFNAME_WAVE_OUT_MIX)
|
1543
|
+
|
1544
|
+
# define STATIC_KSAUDFNAME_MONO_OUT \
|
1545
|
+
0xf9b41dc3L, 0x96e2, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1546
|
+
DEFINE_GUIDSTRUCT("F9B41DC3-96E2-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MONO_OUT);
|
1547
|
+
# define KSAUDFNAME_MONO_OUT DEFINE_GUIDNAMED(KSAUDFNAME_MONO_OUT)
|
1548
|
+
|
1549
|
+
# define STATIC_KSAUDFNAME_STEREO_MIX \
|
1550
|
+
0xdff077L, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1551
|
+
DEFINE_GUIDSTRUCT("00DFF077-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_STEREO_MIX);
|
1552
|
+
# define KSAUDFNAME_STEREO_MIX DEFINE_GUIDNAMED(KSAUDFNAME_STEREO_MIX)
|
1553
|
+
|
1554
|
+
# define STATIC_KSAUDFNAME_MONO_MIX \
|
1555
|
+
0xdff078L, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1556
|
+
DEFINE_GUIDSTRUCT("00DFF078-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MONO_MIX);
|
1557
|
+
# define KSAUDFNAME_MONO_MIX DEFINE_GUIDNAMED(KSAUDFNAME_MONO_MIX)
|
1558
|
+
|
1559
|
+
# define STATIC_KSAUDFNAME_MONO_OUT_VOLUME \
|
1560
|
+
0x1ad247ebL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1561
|
+
DEFINE_GUIDSTRUCT("1AD247EB-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MONO_OUT_VOLUME);
|
1562
|
+
# define KSAUDFNAME_MONO_OUT_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MONO_OUT_VOLUME)
|
1563
|
+
|
1564
|
+
# define STATIC_KSAUDFNAME_MONO_OUT_MUTE \
|
1565
|
+
0x1ad247ecL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1566
|
+
DEFINE_GUIDSTRUCT("1AD247EC-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MONO_OUT_MUTE);
|
1567
|
+
# define KSAUDFNAME_MONO_OUT_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_MONO_OUT_MUTE)
|
1568
|
+
|
1569
|
+
# define STATIC_KSAUDFNAME_STEREO_MIX_VOLUME \
|
1570
|
+
0x1ad247edL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1571
|
+
DEFINE_GUIDSTRUCT("1AD247ED-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_STEREO_MIX_VOLUME);
|
1572
|
+
# define KSAUDFNAME_STEREO_MIX_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_STEREO_MIX_VOLUME)
|
1573
|
+
|
1574
|
+
# define STATIC_KSAUDFNAME_STEREO_MIX_MUTE \
|
1575
|
+
0x22b0eafdL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1576
|
+
DEFINE_GUIDSTRUCT("22B0EAFD-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_STEREO_MIX_MUTE);
|
1577
|
+
# define KSAUDFNAME_STEREO_MIX_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_STEREO_MIX_MUTE)
|
1578
|
+
|
1579
|
+
# define STATIC_KSAUDFNAME_MONO_MIX_VOLUME \
|
1580
|
+
0x22b0eafeL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1581
|
+
DEFINE_GUIDSTRUCT("22B0EAFE-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MONO_MIX_VOLUME);
|
1582
|
+
# define KSAUDFNAME_MONO_MIX_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_MONO_MIX_VOLUME)
|
1583
|
+
|
1584
|
+
# define STATIC_KSAUDFNAME_MONO_MIX_MUTE \
|
1585
|
+
0x2bc31d69L, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1586
|
+
DEFINE_GUIDSTRUCT("2BC31D69-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MONO_MIX_MUTE);
|
1587
|
+
# define KSAUDFNAME_MONO_MIX_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_MONO_MIX_MUTE)
|
1588
|
+
|
1589
|
+
# define STATIC_KSAUDFNAME_MICROPHONE_BOOST \
|
1590
|
+
0x2bc31d6aL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1591
|
+
DEFINE_GUIDSTRUCT("2BC31D6A-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_MICROPHONE_BOOST);
|
1592
|
+
# define KSAUDFNAME_MICROPHONE_BOOST DEFINE_GUIDNAMED(KSAUDFNAME_MICROPHONE_BOOST)
|
1593
|
+
|
1594
|
+
# define STATIC_KSAUDFNAME_ALTERNATE_MICROPHONE \
|
1595
|
+
0x2bc31d6bL, 0x96e3, 0x11d2, 0xac, 0x4c, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1596
|
+
DEFINE_GUIDSTRUCT("2BC31D6B-96E3-11d2-AC4C-00C04F8EFB68", KSAUDFNAME_ALTERNATE_MICROPHONE);
|
1597
|
+
# define KSAUDFNAME_ALTERNATE_MICROPHONE DEFINE_GUIDNAMED(KSAUDFNAME_ALTERNATE_MICROPHONE)
|
1598
|
+
|
1599
|
+
# define STATIC_KSAUDFNAME_3D_DEPTH \
|
1600
|
+
0x63ff5747L, 0x991f, 0x11d2, 0xac, 0x4d, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1601
|
+
DEFINE_GUIDSTRUCT("63FF5747-991F-11d2-AC4D-00C04F8EFB68", KSAUDFNAME_3D_DEPTH);
|
1602
|
+
# define KSAUDFNAME_3D_DEPTH DEFINE_GUIDNAMED(KSAUDFNAME_3D_DEPTH)
|
1603
|
+
|
1604
|
+
# define STATIC_KSAUDFNAME_3D_CENTER \
|
1605
|
+
0x9f0670b4L, 0x991f, 0x11d2, 0xac, 0x4d, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1606
|
+
DEFINE_GUIDSTRUCT("9F0670B4-991F-11d2-AC4D-00C04F8EFB68", KSAUDFNAME_3D_CENTER);
|
1607
|
+
# define KSAUDFNAME_3D_CENTER DEFINE_GUIDNAMED(KSAUDFNAME_3D_CENTER)
|
1608
|
+
|
1609
|
+
# define STATIC_KSAUDFNAME_VIDEO_VOLUME \
|
1610
|
+
0x9b46e708L, 0x992a, 0x11d2, 0xac, 0x4d, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1611
|
+
DEFINE_GUIDSTRUCT("9B46E708-992A-11d2-AC4D-00C04F8EFB68", KSAUDFNAME_VIDEO_VOLUME);
|
1612
|
+
# define KSAUDFNAME_VIDEO_VOLUME DEFINE_GUIDNAMED(KSAUDFNAME_VIDEO_VOLUME)
|
1613
|
+
|
1614
|
+
# define STATIC_KSAUDFNAME_VIDEO_MUTE \
|
1615
|
+
0x9b46e709L, 0x992a, 0x11d2, 0xac, 0x4d, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1616
|
+
DEFINE_GUIDSTRUCT("9B46E709-992A-11d2-AC4D-00C04F8EFB68", KSAUDFNAME_VIDEO_MUTE);
|
1617
|
+
# define KSAUDFNAME_VIDEO_MUTE DEFINE_GUIDNAMED(KSAUDFNAME_VIDEO_MUTE)
|
1618
|
+
|
1619
|
+
# define STATIC_KSAUDFNAME_VIDEO \
|
1620
|
+
0x915daec4L, 0xa434, 0x11d2, 0xac, 0x52, 0x0, 0xc0, 0x4f, 0x8e, 0xfb, 0x68
|
1621
|
+
DEFINE_GUIDSTRUCT("915DAEC4-A434-11d2-AC52-00C04F8EFB68", KSAUDFNAME_VIDEO);
|
1622
|
+
# define KSAUDFNAME_VIDEO DEFINE_GUIDNAMED(KSAUDFNAME_VIDEO)
|
1623
|
+
|
1624
|
+
# define STATIC_KSAUDFNAME_PEAKMETER \
|
1625
|
+
0x57e24340L, 0xfc5b, 0x4612, 0xa5, 0x62, 0x72, 0xb1, 0x1a, 0x29, 0xdf, 0xae
|
1626
|
+
DEFINE_GUIDSTRUCT("57E24340-FC5B-4612-A562-72B11A29DFAE", KSAUDFNAME_PEAKMETER);
|
1627
|
+
# define KSAUDFNAME_PEAKMETER DEFINE_GUIDNAMED(KSAUDFNAME_PEAKMETER)
|
1628
|
+
|
1629
|
+
# define KSNODEPIN_STANDARD_IN 1
|
1630
|
+
# define KSNODEPIN_STANDARD_OUT 0
|
1631
|
+
|
1632
|
+
# define KSNODEPIN_SUM_MUX_IN 1
|
1633
|
+
# define KSNODEPIN_SUM_MUX_OUT 0
|
1634
|
+
|
1635
|
+
# define KSNODEPIN_DEMUX_IN 0
|
1636
|
+
# define KSNODEPIN_DEMUX_OUT 1
|
1637
|
+
|
1638
|
+
# define KSNODEPIN_AEC_RENDER_IN 1
|
1639
|
+
# define KSNODEPIN_AEC_RENDER_OUT 0
|
1640
|
+
# define KSNODEPIN_AEC_CAPTURE_IN 2
|
1641
|
+
# define KSNODEPIN_AEC_CAPTURE_OUT 3
|
1642
|
+
|
1643
|
+
# define STATIC_KSMETHODSETID_Wavetable \
|
1644
|
+
0xDCEF31EBL, 0xD907, 0x11D0, 0x95, 0x83, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1645
|
+
DEFINE_GUIDSTRUCT("DCEF31EB-D907-11D0-9583-00C04FB925D3", KSMETHODSETID_Wavetable);
|
1646
|
+
# define KSMETHODSETID_Wavetable DEFINE_GUIDNAMED(KSMETHODSETID_Wavetable)
|
1647
|
+
|
1648
|
+
typedef enum
|
1649
|
+
{
|
1650
|
+
KSMETHOD_WAVETABLE_WAVE_ALLOC,
|
1651
|
+
KSMETHOD_WAVETABLE_WAVE_FREE,
|
1652
|
+
KSMETHOD_WAVETABLE_WAVE_FIND,
|
1653
|
+
KSMETHOD_WAVETABLE_WAVE_WRITE
|
1654
|
+
}KSMETHOD_WAVETABLE;
|
1655
|
+
|
1656
|
+
typedef struct
|
1657
|
+
{
|
1658
|
+
KSIDENTIFIER Identifier;
|
1659
|
+
ULONG Size;
|
1660
|
+
WINBOOL Looped;
|
1661
|
+
ULONG LoopPoint;
|
1662
|
+
WINBOOL InROM;
|
1663
|
+
KSDATAFORMAT Format;
|
1664
|
+
}KSWAVETABLE_WAVE_DESC, * PKSWAVETABLE_WAVE_DESC;
|
1665
|
+
|
1666
|
+
# define STATIC_KSPROPSETID_Acoustic_Echo_Cancel \
|
1667
|
+
0xd7a4af8bL, 0x3dc1, 0x4902, 0x91, 0xea, 0x8a, 0x15, 0xc9, 0x0e, 0x05, 0xb2
|
1668
|
+
DEFINE_GUIDSTRUCT("D7A4AF8B-3DC1-4902-91EA-8A15C90E05B2", KSPROPSETID_Acoustic_Echo_Cancel);
|
1669
|
+
# define KSPROPSETID_Acoustic_Echo_Cancel DEFINE_GUIDNAMED(KSPROPSETID_Acoustic_Echo_Cancel)
|
1670
|
+
|
1671
|
+
typedef enum
|
1672
|
+
{
|
1673
|
+
KSPROPERTY_AEC_NOISE_FILL_ENABLE = 0,
|
1674
|
+
KSPROPERTY_AEC_STATUS,
|
1675
|
+
KSPROPERTY_AEC_MODE
|
1676
|
+
}KSPROPERTY_AEC;
|
1677
|
+
|
1678
|
+
# define AEC_STATUS_FD_HISTORY_UNINITIALIZED 0x0
|
1679
|
+
# define AEC_STATUS_FD_HISTORY_CONTINUOUSLY_CONVERGED 0x1
|
1680
|
+
# define AEC_STATUS_FD_HISTORY_PREVIOUSLY_DIVERGED 0x2
|
1681
|
+
# define AEC_STATUS_FD_CURRENTLY_CONVERGED 0x8
|
1682
|
+
|
1683
|
+
# define AEC_MODE_PASS_THROUGH 0x0
|
1684
|
+
# define AEC_MODE_HALF_DUPLEX 0x1
|
1685
|
+
# define AEC_MODE_FULL_DUPLEX 0x2
|
1686
|
+
|
1687
|
+
# define STATIC_KSPROPSETID_Wave \
|
1688
|
+
0x924e54b0L, 0x630f, 0x11cf, 0xad, 0xa7, 0x08, 0x00, 0x3e, 0x30, 0x49, 0x4a
|
1689
|
+
DEFINE_GUIDSTRUCT("924e54b0-630f-11cf-ada7-08003e30494a", KSPROPSETID_Wave);
|
1690
|
+
# define KSPROPSETID_Wave DEFINE_GUIDNAMED(KSPROPSETID_Wave)
|
1691
|
+
|
1692
|
+
typedef enum
|
1693
|
+
{
|
1694
|
+
KSPROPERTY_WAVE_COMPATIBLE_CAPABILITIES,
|
1695
|
+
KSPROPERTY_WAVE_INPUT_CAPABILITIES,
|
1696
|
+
KSPROPERTY_WAVE_OUTPUT_CAPABILITIES,
|
1697
|
+
KSPROPERTY_WAVE_BUFFER,
|
1698
|
+
KSPROPERTY_WAVE_FREQUENCY,
|
1699
|
+
KSPROPERTY_WAVE_VOLUME,
|
1700
|
+
KSPROPERTY_WAVE_PAN
|
1701
|
+
}KSPROPERTY_WAVE;
|
1702
|
+
|
1703
|
+
typedef struct
|
1704
|
+
{
|
1705
|
+
ULONG ulDeviceType;
|
1706
|
+
}KSWAVE_COMPATCAPS, * PKSWAVE_COMPATCAPS;
|
1707
|
+
|
1708
|
+
# define KSWAVE_COMPATCAPS_INPUT 0x00000000
|
1709
|
+
# define KSWAVE_COMPATCAPS_OUTPUT 0x00000001
|
1710
|
+
|
1711
|
+
typedef struct
|
1712
|
+
{
|
1713
|
+
ULONG MaximumChannelsPerConnection;
|
1714
|
+
ULONG MinimumBitsPerSample;
|
1715
|
+
ULONG MaximumBitsPerSample;
|
1716
|
+
ULONG MinimumSampleFrequency;
|
1717
|
+
ULONG MaximumSampleFrequency;
|
1718
|
+
ULONG TotalConnections;
|
1719
|
+
ULONG ActiveConnections;
|
1720
|
+
}KSWAVE_INPUT_CAPABILITIES, * PKSWAVE_INPUT_CAPABILITIES;
|
1721
|
+
|
1722
|
+
typedef struct
|
1723
|
+
{
|
1724
|
+
ULONG MaximumChannelsPerConnection;
|
1725
|
+
ULONG MinimumBitsPerSample;
|
1726
|
+
ULONG MaximumBitsPerSample;
|
1727
|
+
ULONG MinimumSampleFrequency;
|
1728
|
+
ULONG MaximumSampleFrequency;
|
1729
|
+
ULONG TotalConnections;
|
1730
|
+
ULONG StaticConnections;
|
1731
|
+
ULONG StreamingConnections;
|
1732
|
+
ULONG ActiveConnections;
|
1733
|
+
ULONG ActiveStaticConnections;
|
1734
|
+
ULONG ActiveStreamingConnections;
|
1735
|
+
ULONG Total3DConnections;
|
1736
|
+
ULONG Static3DConnections;
|
1737
|
+
ULONG Streaming3DConnections;
|
1738
|
+
ULONG Active3DConnections;
|
1739
|
+
ULONG ActiveStatic3DConnections;
|
1740
|
+
ULONG ActiveStreaming3DConnections;
|
1741
|
+
ULONG TotalSampleMemory;
|
1742
|
+
ULONG FreeSampleMemory;
|
1743
|
+
ULONG LargestFreeContiguousSampleMemory;
|
1744
|
+
}KSWAVE_OUTPUT_CAPABILITIES, * PKSWAVE_OUTPUT_CAPABILITIES;
|
1745
|
+
|
1746
|
+
typedef struct
|
1747
|
+
{
|
1748
|
+
LONG LeftAttenuation;
|
1749
|
+
LONG RightAttenuation;
|
1750
|
+
}KSWAVE_VOLUME, * PKSWAVE_VOLUME;
|
1751
|
+
|
1752
|
+
# define KSWAVE_BUFFER_ATTRIBUTEF_LOOPING 0x00000001
|
1753
|
+
# define KSWAVE_BUFFER_ATTRIBUTEF_STATIC 0x00000002
|
1754
|
+
|
1755
|
+
typedef struct
|
1756
|
+
{
|
1757
|
+
ULONG Attributes;
|
1758
|
+
ULONG BufferSize;
|
1759
|
+
PVOID BufferAddress;
|
1760
|
+
}KSWAVE_BUFFER, * PKSWAVE_BUFFER;
|
1761
|
+
|
1762
|
+
# define STATIC_KSMUSIC_TECHNOLOGY_PORT \
|
1763
|
+
0x86C92E60L, 0x62E8, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1764
|
+
DEFINE_GUIDSTRUCT("86C92E60-62E8-11CF-A5D6-28DB04C10000", KSMUSIC_TECHNOLOGY_PORT);
|
1765
|
+
# define KSMUSIC_TECHNOLOGY_PORT DEFINE_GUIDNAMED(KSMUSIC_TECHNOLOGY_PORT)
|
1766
|
+
|
1767
|
+
# define STATIC_KSMUSIC_TECHNOLOGY_SQSYNTH \
|
1768
|
+
0x0ECF4380L, 0x62E9, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1769
|
+
DEFINE_GUIDSTRUCT("0ECF4380-62E9-11CF-A5D6-28DB04C10000", KSMUSIC_TECHNOLOGY_SQSYNTH);
|
1770
|
+
# define KSMUSIC_TECHNOLOGY_SQSYNTH DEFINE_GUIDNAMED(KSMUSIC_TECHNOLOGY_SQSYNTH)
|
1771
|
+
|
1772
|
+
# define STATIC_KSMUSIC_TECHNOLOGY_FMSYNTH \
|
1773
|
+
0x252C5C80L, 0x62E9, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1774
|
+
DEFINE_GUIDSTRUCT("252C5C80-62E9-11CF-A5D6-28DB04C10000", KSMUSIC_TECHNOLOGY_FMSYNTH);
|
1775
|
+
# define KSMUSIC_TECHNOLOGY_FMSYNTH DEFINE_GUIDNAMED(KSMUSIC_TECHNOLOGY_FMSYNTH)
|
1776
|
+
|
1777
|
+
# define STATIC_KSMUSIC_TECHNOLOGY_WAVETABLE \
|
1778
|
+
0x394EC7C0L, 0x62E9, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1779
|
+
DEFINE_GUIDSTRUCT("394EC7C0-62E9-11CF-A5D6-28DB04C10000", KSMUSIC_TECHNOLOGY_WAVETABLE);
|
1780
|
+
# define KSMUSIC_TECHNOLOGY_WAVETABLE DEFINE_GUIDNAMED(KSMUSIC_TECHNOLOGY_WAVETABLE)
|
1781
|
+
|
1782
|
+
# define STATIC_KSMUSIC_TECHNOLOGY_SWSYNTH \
|
1783
|
+
0x37407736L, 0x3620, 0x11D1, 0x85, 0xD3, 0x00, 0x00, 0xF8, 0x75, 0x43, 0x80
|
1784
|
+
DEFINE_GUIDSTRUCT("37407736-3620-11D1-85D3-0000F8754380", KSMUSIC_TECHNOLOGY_SWSYNTH);
|
1785
|
+
# define KSMUSIC_TECHNOLOGY_SWSYNTH DEFINE_GUIDNAMED(KSMUSIC_TECHNOLOGY_SWSYNTH)
|
1786
|
+
|
1787
|
+
# define STATIC_KSPROPSETID_WaveTable \
|
1788
|
+
0x8539E660L, 0x62E9, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1789
|
+
DEFINE_GUIDSTRUCT("8539E660-62E9-11CF-A5D6-28DB04C10000", KSPROPSETID_WaveTable);
|
1790
|
+
# define KSPROPSETID_WaveTable DEFINE_GUIDNAMED(KSPROPSETID_WaveTable)
|
1791
|
+
|
1792
|
+
typedef enum
|
1793
|
+
{
|
1794
|
+
KSPROPERTY_WAVETABLE_LOAD_SAMPLE,
|
1795
|
+
KSPROPERTY_WAVETABLE_UNLOAD_SAMPLE,
|
1796
|
+
KSPROPERTY_WAVETABLE_MEMORY,
|
1797
|
+
KSPROPERTY_WAVETABLE_VERSION
|
1798
|
+
}KSPROPERTY_WAVETABLE;
|
1799
|
+
|
1800
|
+
typedef struct
|
1801
|
+
{
|
1802
|
+
KSDATARANGE DataRange;
|
1803
|
+
GUID Technology;
|
1804
|
+
ULONG Channels;
|
1805
|
+
ULONG Notes;
|
1806
|
+
ULONG ChannelMask;
|
1807
|
+
}KSDATARANGE_MUSIC, * PKSDATARANGE_MUSIC;
|
1808
|
+
|
1809
|
+
# define STATIC_KSEVENTSETID_Cyclic \
|
1810
|
+
0x142C1AC0L, 0x072A, 0x11D0, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1811
|
+
DEFINE_GUIDSTRUCT("142C1AC0-072A-11D0-A5D6-28DB04C10000", KSEVENTSETID_Cyclic);
|
1812
|
+
# define KSEVENTSETID_Cyclic DEFINE_GUIDNAMED(KSEVENTSETID_Cyclic)
|
1813
|
+
|
1814
|
+
typedef enum
|
1815
|
+
{
|
1816
|
+
KSEVENT_CYCLIC_TIME_INTERVAL
|
1817
|
+
}KSEVENT_CYCLIC_TIME;
|
1818
|
+
|
1819
|
+
# define STATIC_KSPROPSETID_Cyclic \
|
1820
|
+
0x3FFEAEA0L, 0x2BEE, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1821
|
+
DEFINE_GUIDSTRUCT("3FFEAEA0-2BEE-11CF-A5D6-28DB04C10000", KSPROPSETID_Cyclic);
|
1822
|
+
# define KSPROPSETID_Cyclic DEFINE_GUIDNAMED(KSPROPSETID_Cyclic)
|
1823
|
+
|
1824
|
+
typedef enum
|
1825
|
+
{
|
1826
|
+
KSPROPERTY_CYCLIC_POSITION
|
1827
|
+
}KSPROPERTY_CYCLIC;
|
1828
|
+
|
1829
|
+
# define STATIC_KSEVENTSETID_AudioControlChange \
|
1830
|
+
0xE85E9698L, 0xFA2F, 0x11D1, 0x95, 0xBD, 0x00, 0xC0, 0x4F, 0xB9, 0x25, 0xD3
|
1831
|
+
DEFINE_GUIDSTRUCT("E85E9698-FA2F-11D1-95BD-00C04FB925D3", KSEVENTSETID_AudioControlChange);
|
1832
|
+
# define KSEVENTSETID_AudioControlChange DEFINE_GUIDNAMED(KSEVENTSETID_AudioControlChange)
|
1833
|
+
|
1834
|
+
typedef enum
|
1835
|
+
{
|
1836
|
+
KSEVENT_CONTROL_CHANGE
|
1837
|
+
}KSEVENT_AUDIO_CONTROL_CHANGE;
|
1838
|
+
|
1839
|
+
# define STATIC_KSEVENTSETID_LoopedStreaming \
|
1840
|
+
0x4682B940L, 0xC6EF, 0x11D0, 0x96, 0xD8, 0x00, 0xAA, 0x00, 0x51, 0xE5, 0x1D
|
1841
|
+
DEFINE_GUIDSTRUCT("4682B940-C6EF-11D0-96D8-00AA0051E51D", KSEVENTSETID_LoopedStreaming);
|
1842
|
+
# define KSEVENTSETID_LoopedStreaming DEFINE_GUIDNAMED(KSEVENTSETID_LoopedStreaming)
|
1843
|
+
|
1844
|
+
typedef enum
|
1845
|
+
{
|
1846
|
+
KSEVENT_LOOPEDSTREAMING_POSITION
|
1847
|
+
}KSEVENT_LOOPEDSTREAMING;
|
1848
|
+
|
1849
|
+
typedef struct
|
1850
|
+
{
|
1851
|
+
KSEVENTDATA KsEventData;
|
1852
|
+
DWORDLONG Position;
|
1853
|
+
}LOOPEDSTREAMING_POSITION_EVENT_DATA, * PLOOPEDSTREAMING_POSITION_EVENT_DATA;
|
1854
|
+
|
1855
|
+
# define STATIC_KSPROPSETID_Sysaudio \
|
1856
|
+
0xCBE3FAA0L, 0xCC75, 0x11D0, 0xB4, 0x65, 0x00, 0x00, 0x1A, 0x18, 0x18, 0xE6
|
1857
|
+
DEFINE_GUIDSTRUCT("CBE3FAA0-CC75-11D0-B465-00001A1818E6", KSPROPSETID_Sysaudio);
|
1858
|
+
# define KSPROPSETID_Sysaudio DEFINE_GUIDNAMED(KSPROPSETID_Sysaudio)
|
1859
|
+
|
1860
|
+
typedef enum
|
1861
|
+
{
|
1862
|
+
KSPROPERTY_SYSAUDIO_DEVICE_COUNT = 1,
|
1863
|
+
KSPROPERTY_SYSAUDIO_DEVICE_FRIENDLY_NAME = 2,
|
1864
|
+
KSPROPERTY_SYSAUDIO_DEVICE_INSTANCE = 3,
|
1865
|
+
KSPROPERTY_SYSAUDIO_DEVICE_INTERFACE_NAME = 4,
|
1866
|
+
KSPROPERTY_SYSAUDIO_SELECT_GRAPH = 5,
|
1867
|
+
KSPROPERTY_SYSAUDIO_CREATE_VIRTUAL_SOURCE = 6,
|
1868
|
+
KSPROPERTY_SYSAUDIO_DEVICE_DEFAULT = 7,
|
1869
|
+
KSPROPERTY_SYSAUDIO_INSTANCE_INFO = 14,
|
1870
|
+
KSPROPERTY_SYSAUDIO_COMPONENT_ID = 16
|
1871
|
+
}KSPROPERTY_SYSAUDIO;
|
1872
|
+
|
1873
|
+
typedef struct
|
1874
|
+
{
|
1875
|
+
KSPROPERTY Property;
|
1876
|
+
GUID PinCategory;
|
1877
|
+
GUID PinName;
|
1878
|
+
}SYSAUDIO_CREATE_VIRTUAL_SOURCE, * PSYSAUDIO_CREATE_VIRTUAL_SOURCE;
|
1879
|
+
|
1880
|
+
typedef struct
|
1881
|
+
{
|
1882
|
+
KSPROPERTY Property;
|
1883
|
+
ULONG PinId;
|
1884
|
+
ULONG NodeId;
|
1885
|
+
ULONG Flags;
|
1886
|
+
ULONG Reserved;
|
1887
|
+
}SYSAUDIO_SELECT_GRAPH, * PSYSAUDIO_SELECT_GRAPH;
|
1888
|
+
|
1889
|
+
typedef struct
|
1890
|
+
{
|
1891
|
+
KSPROPERTY Property;
|
1892
|
+
ULONG Flags;
|
1893
|
+
ULONG DeviceNumber;
|
1894
|
+
}SYSAUDIO_INSTANCE_INFO, * PSYSAUDIO_INSTANCE_INFO;
|
1895
|
+
|
1896
|
+
# define SYSAUDIO_FLAGS_DONT_COMBINE_PINS 0x00000001
|
1897
|
+
|
1898
|
+
# define STATIC_KSPROPSETID_Sysaudio_Pin \
|
1899
|
+
0xA3A53220L, 0xC6E4, 0x11D0, 0xB4, 0x65, 0x00, 0x00, 0x1A, 0x18, 0x18, 0xE6
|
1900
|
+
DEFINE_GUIDSTRUCT("A3A53220-C6E4-11D0-B465-00001A1818E6", KSPROPSETID_Sysaudio_Pin);
|
1901
|
+
# define KSPROPSETID_Sysaudio_Pin DEFINE_GUIDNAMED(KSPROPSETID_Sysaudio_Pin)
|
1902
|
+
|
1903
|
+
typedef enum
|
1904
|
+
{
|
1905
|
+
KSPROPERTY_SYSAUDIO_ATTACH_VIRTUAL_SOURCE = 1
|
1906
|
+
}KSPROPERTY_SYSAUDIO_PIN;
|
1907
|
+
|
1908
|
+
typedef struct
|
1909
|
+
{
|
1910
|
+
KSPROPERTY Property;
|
1911
|
+
ULONG MixerPinId;
|
1912
|
+
ULONG Reserved;
|
1913
|
+
}SYSAUDIO_ATTACH_VIRTUAL_SOURCE, * PSYSAUDIO_ATTACH_VIRTUAL_SOURCE;
|
1914
|
+
|
1915
|
+
typedef struct
|
1916
|
+
{
|
1917
|
+
KSPROPERTY Property;
|
1918
|
+
ULONG NodeId;
|
1919
|
+
ULONG Reserved;
|
1920
|
+
}KSNODEPROPERTY, * PKSNODEPROPERTY;
|
1921
|
+
|
1922
|
+
typedef struct
|
1923
|
+
{
|
1924
|
+
KSNODEPROPERTY NodeProperty;
|
1925
|
+
LONG Channel;
|
1926
|
+
ULONG Reserved;
|
1927
|
+
}KSNODEPROPERTY_AUDIO_CHANNEL, * PKSNODEPROPERTY_AUDIO_CHANNEL;
|
1928
|
+
|
1929
|
+
typedef struct
|
1930
|
+
{
|
1931
|
+
KSNODEPROPERTY NodeProperty;
|
1932
|
+
ULONG DevSpecificId;
|
1933
|
+
ULONG DeviceInfo;
|
1934
|
+
ULONG Length;
|
1935
|
+
}KSNODEPROPERTY_AUDIO_DEV_SPECIFIC, * PKSNODEPROPERTY_AUDIO_DEV_SPECIFIC;
|
1936
|
+
|
1937
|
+
typedef struct
|
1938
|
+
{
|
1939
|
+
KSNODEPROPERTY NodeProperty;
|
1940
|
+
PVOID ListenerId;
|
1941
|
+
# ifndef _WIN64
|
1942
|
+
ULONG Reserved;
|
1943
|
+
# endif
|
1944
|
+
}KSNODEPROPERTY_AUDIO_3D_LISTENER, * PKSNODEPROPERTY_AUDIO_3D_LISTENER;
|
1945
|
+
|
1946
|
+
typedef struct
|
1947
|
+
{
|
1948
|
+
KSNODEPROPERTY NodeProperty;
|
1949
|
+
PVOID AppContext;
|
1950
|
+
ULONG Length;
|
1951
|
+
# ifndef _WIN64
|
1952
|
+
ULONG Reserved;
|
1953
|
+
# endif
|
1954
|
+
}KSNODEPROPERTY_AUDIO_PROPERTY, * PKSNODEPROPERTY_AUDIO_PROPERTY;
|
1955
|
+
|
1956
|
+
# define STATIC_KSPROPSETID_AudioGfx \
|
1957
|
+
0x79a9312eL, 0x59ae, 0x43b0, 0xa3, 0x50, 0x8b, 0x5, 0x28, 0x4c, 0xab, 0x24
|
1958
|
+
DEFINE_GUIDSTRUCT("79A9312E-59AE-43b0-A350-8B05284CAB24", KSPROPSETID_AudioGfx);
|
1959
|
+
# define KSPROPSETID_AudioGfx DEFINE_GUIDNAMED(KSPROPSETID_AudioGfx)
|
1960
|
+
|
1961
|
+
typedef enum
|
1962
|
+
{
|
1963
|
+
KSPROPERTY_AUDIOGFX_RENDERTARGETDEVICEID,
|
1964
|
+
KSPROPERTY_AUDIOGFX_CAPTURETARGETDEVICEID
|
1965
|
+
}KSPROPERTY_AUDIOGFX;
|
1966
|
+
|
1967
|
+
# define STATIC_KSPROPSETID_Linear \
|
1968
|
+
0x5A2FFE80L, 0x16B9, 0x11D0, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1969
|
+
DEFINE_GUIDSTRUCT("5A2FFE80-16B9-11D0-A5D6-28DB04C10000", KSPROPSETID_Linear);
|
1970
|
+
# define KSPROPSETID_Linear DEFINE_GUIDNAMED(KSPROPSETID_Linear)
|
1971
|
+
|
1972
|
+
typedef enum
|
1973
|
+
{
|
1974
|
+
KSPROPERTY_LINEAR_POSITION
|
1975
|
+
}KSPROPERTY_LINEAR;
|
1976
|
+
|
1977
|
+
# define STATIC_KSDATAFORMAT_TYPE_MUSIC \
|
1978
|
+
0xE725D360L, 0x62CC, 0x11CF, { 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00 }
|
1979
|
+
DEFINE_GUIDSTRUCT("E725D360-62CC-11CF-A5D6-28DB04C10000", KSDATAFORMAT_TYPE_MUSIC);
|
1980
|
+
# define KSDATAFORMAT_TYPE_MUSIC DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_MUSIC)
|
1981
|
+
|
1982
|
+
# define STATIC_KSDATAFORMAT_TYPE_MIDI \
|
1983
|
+
0x7364696DL, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
|
1984
|
+
DEFINE_GUIDSTRUCT("7364696D-0000-0010-8000-00aa00389b71", KSDATAFORMAT_TYPE_MIDI);
|
1985
|
+
# define KSDATAFORMAT_TYPE_MIDI DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_MIDI)
|
1986
|
+
|
1987
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MIDI \
|
1988
|
+
0x1D262760L, 0xE957, 0x11CF, { 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00 }
|
1989
|
+
DEFINE_GUIDSTRUCT("1D262760-E957-11CF-A5D6-28DB04C10000", KSDATAFORMAT_SUBTYPE_MIDI);
|
1990
|
+
# define KSDATAFORMAT_SUBTYPE_MIDI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MIDI)
|
1991
|
+
|
1992
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MIDI_BUS \
|
1993
|
+
0x2CA15FA0L, 0x6CFE, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
|
1994
|
+
DEFINE_GUIDSTRUCT("2CA15FA0-6CFE-11CF-A5D6-28DB04C10000", KSDATAFORMAT_SUBTYPE_MIDI_BUS);
|
1995
|
+
# define KSDATAFORMAT_SUBTYPE_MIDI_BUS DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MIDI_BUS)
|
1996
|
+
|
1997
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_RIFFMIDI \
|
1998
|
+
0x4995DAF0L, 0x9EE6, 0x11D0, 0xA4, 0x0E, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
1999
|
+
DEFINE_GUIDSTRUCT("4995DAF0-9EE6-11D0-A40E-00A0C9223196", KSDATAFORMAT_SUBTYPE_RIFFMIDI);
|
2000
|
+
# define KSDATAFORMAT_SUBTYPE_RIFFMIDI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_RIFFMIDI)
|
2001
|
+
|
2002
|
+
typedef struct
|
2003
|
+
{
|
2004
|
+
ULONG TimeDeltaMs;
|
2005
|
+
|
2006
|
+
ULONG ByteCount;
|
2007
|
+
}KSMUSICFORMAT, * PKSMUSICFORMAT;
|
2008
|
+
|
2009
|
+
# define STATIC_KSDATAFORMAT_TYPE_STANDARD_ELEMENTARY_STREAM \
|
2010
|
+
0x36523b11L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2011
|
+
DEFINE_GUIDSTRUCT("36523B11-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_TYPE_STANDARD_ELEMENTARY_STREAM);
|
2012
|
+
# define KSDATAFORMAT_TYPE_STANDARD_ELEMENTARY_STREAM DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_STANDARD_ELEMENTARY_STREAM)
|
2013
|
+
|
2014
|
+
# define STATIC_KSDATAFORMAT_TYPE_STANDARD_PES_PACKET \
|
2015
|
+
0x36523b12L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2016
|
+
DEFINE_GUIDSTRUCT("36523B12-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_TYPE_STANDARD_PES_PACKET);
|
2017
|
+
# define KSDATAFORMAT_TYPE_STANDARD_PES_PACKET DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_STANDARD_PES_PACKET)
|
2018
|
+
|
2019
|
+
# define STATIC_KSDATAFORMAT_TYPE_STANDARD_PACK_HEADER \
|
2020
|
+
0x36523b13L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2021
|
+
DEFINE_GUIDSTRUCT("36523B13-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_TYPE_STANDARD_PACK_HEADER);
|
2022
|
+
# define KSDATAFORMAT_TYPE_STANDARD_PACK_HEADER DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_STANDARD_PACK_HEADER)
|
2023
|
+
|
2024
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_VIDEO \
|
2025
|
+
0x36523b21L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2026
|
+
DEFINE_GUIDSTRUCT("36523B21-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_VIDEO);
|
2027
|
+
# define KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_VIDEO)
|
2028
|
+
|
2029
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_AUDIO \
|
2030
|
+
0x36523b22L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2031
|
+
DEFINE_GUIDSTRUCT("36523B22-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_AUDIO);
|
2032
|
+
# define KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_AUDIO)
|
2033
|
+
|
2034
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_VIDEO \
|
2035
|
+
0x36523b23L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2036
|
+
DEFINE_GUIDSTRUCT("36523B23-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_VIDEO);
|
2037
|
+
# define KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_VIDEO)
|
2038
|
+
|
2039
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_AUDIO \
|
2040
|
+
0x36523b24L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2041
|
+
DEFINE_GUIDSTRUCT("36523B24-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_AUDIO);
|
2042
|
+
# define KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_AUDIO)
|
2043
|
+
|
2044
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_STANDARD_AC3_AUDIO \
|
2045
|
+
0x36523b25L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2046
|
+
DEFINE_GUIDSTRUCT("36523B25-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SUBTYPE_STANDARD_AC3_AUDIO);
|
2047
|
+
# define KSDATAFORMAT_SUBTYPE_STANDARD_AC3_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_STANDARD_AC3_AUDIO)
|
2048
|
+
|
2049
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_VIDEO \
|
2050
|
+
0x36523b31L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2051
|
+
DEFINE_GUIDSTRUCT("36523B31-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_VIDEO);
|
2052
|
+
# define KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_VIDEO)
|
2053
|
+
|
2054
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_AUDIO \
|
2055
|
+
0x36523b32L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2056
|
+
DEFINE_GUIDSTRUCT("36523B32-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_AUDIO);
|
2057
|
+
# define KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_AUDIO)
|
2058
|
+
|
2059
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_VIDEO \
|
2060
|
+
0x36523b33L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2061
|
+
DEFINE_GUIDSTRUCT("36523B33-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_VIDEO);
|
2062
|
+
# define KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_VIDEO)
|
2063
|
+
|
2064
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_AUDIO \
|
2065
|
+
0x36523b34L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2066
|
+
DEFINE_GUIDSTRUCT("36523B34-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_AUDIO);
|
2067
|
+
# define KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_AUDIO)
|
2068
|
+
|
2069
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_DIALECT_AC3_AUDIO \
|
2070
|
+
0x36523b35L, 0x8ee5, 0x11d1, 0x8c, 0xa3, 0x00, 0x60, 0xb0, 0x57, 0x66, 0x4a
|
2071
|
+
DEFINE_GUIDSTRUCT("36523B35-8EE5-11d1-8CA3-0060B057664A", KSDATAFORMAT_SPECIFIER_DIALECT_AC3_AUDIO);
|
2072
|
+
# define KSDATAFORMAT_SPECIFIER_DIALECT_AC3_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_DIALECT_AC3_AUDIO)
|
2073
|
+
|
2074
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_DSS_VIDEO \
|
2075
|
+
0xa0af4f81L, 0xe163, 0x11d0, 0xba, 0xd9, 0x00, 0x60, 0x97, 0x44, 0x11, 0x1a
|
2076
|
+
DEFINE_GUIDSTRUCT("a0af4f81-e163-11d0-bad9-00609744111a", KSDATAFORMAT_SUBTYPE_DSS_VIDEO);
|
2077
|
+
# define KSDATAFORMAT_SUBTYPE_DSS_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_DSS_VIDEO)
|
2078
|
+
|
2079
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_DSS_AUDIO \
|
2080
|
+
0xa0af4f82L, 0xe163, 0x11d0, 0xba, 0xd9, 0x00, 0x60, 0x97, 0x44, 0x11, 0x1a
|
2081
|
+
DEFINE_GUIDSTRUCT("a0af4f82-e163-11d0-bad9-00609744111a", KSDATAFORMAT_SUBTYPE_DSS_AUDIO);
|
2082
|
+
# define KSDATAFORMAT_SUBTYPE_DSS_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_DSS_AUDIO)
|
2083
|
+
|
2084
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MPEG1Packet \
|
2085
|
+
0xe436eb80, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70
|
2086
|
+
DEFINE_GUIDSTRUCT("e436eb80-524f-11ce-9F53-0020af0ba770", KSDATAFORMAT_SUBTYPE_MPEG1Packet);
|
2087
|
+
# define KSDATAFORMAT_SUBTYPE_MPEG1Packet DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MPEG1Packet)
|
2088
|
+
|
2089
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MPEG1Payload \
|
2090
|
+
0xe436eb81, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70
|
2091
|
+
DEFINE_GUIDSTRUCT("e436eb81-524f-11ce-9F53-0020af0ba770", KSDATAFORMAT_SUBTYPE_MPEG1Payload);
|
2092
|
+
# define KSDATAFORMAT_SUBTYPE_MPEG1Payload DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MPEG1Payload)
|
2093
|
+
|
2094
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MPEG1Video \
|
2095
|
+
0xe436eb86, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70
|
2096
|
+
DEFINE_GUIDSTRUCT("e436eb86-524f-11ce-9f53-0020af0ba770", KSDATAFORMAT_SUBTYPE_MPEG1Video);
|
2097
|
+
# define KSDATAFORMAT_SUBTYPE_MPEG1Video DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MPEG1Video)
|
2098
|
+
|
2099
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO \
|
2100
|
+
0x05589f82L, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a
|
2101
|
+
DEFINE_GUIDSTRUCT("05589f82-c356-11ce-bf01-00aa0055595a", KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO);
|
2102
|
+
# define KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO)
|
2103
|
+
|
2104
|
+
# define STATIC_KSDATAFORMAT_TYPE_MPEG2_PES \
|
2105
|
+
0xe06d8020L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2106
|
+
DEFINE_GUIDSTRUCT("e06d8020-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_TYPE_MPEG2_PES);
|
2107
|
+
# define KSDATAFORMAT_TYPE_MPEG2_PES DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_MPEG2_PES)
|
2108
|
+
|
2109
|
+
# define STATIC_KSDATAFORMAT_TYPE_MPEG2_PROGRAM \
|
2110
|
+
0xe06d8022L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2111
|
+
DEFINE_GUIDSTRUCT("e06d8022-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_TYPE_MPEG2_PROGRAM);
|
2112
|
+
# define KSDATAFORMAT_TYPE_MPEG2_PROGRAM DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_MPEG2_PROGRAM)
|
2113
|
+
|
2114
|
+
# define STATIC_KSDATAFORMAT_TYPE_MPEG2_TRANSPORT \
|
2115
|
+
0xe06d8023L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2116
|
+
DEFINE_GUIDSTRUCT("e06d8023-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_TYPE_MPEG2_TRANSPORT);
|
2117
|
+
# define KSDATAFORMAT_TYPE_MPEG2_TRANSPORT DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_MPEG2_TRANSPORT)
|
2118
|
+
|
2119
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MPEG2_VIDEO \
|
2120
|
+
0xe06d8026L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2121
|
+
DEFINE_GUIDSTRUCT("e06d8026-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_MPEG2_VIDEO);
|
2122
|
+
# define KSDATAFORMAT_SUBTYPE_MPEG2_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MPEG2_VIDEO)
|
2123
|
+
|
2124
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO \
|
2125
|
+
0xe06d80e3L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2126
|
+
DEFINE_GUIDSTRUCT("e06d80e3-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO);
|
2127
|
+
# define KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO)
|
2128
|
+
|
2129
|
+
# define STATIC_KSPROPSETID_Mpeg2Vid \
|
2130
|
+
0xC8E11B60L, 0x0CC9, 0x11D0, 0xBD, 0x69, 0x00, 0x35, 0x05, 0xC1, 0x03, 0xA9
|
2131
|
+
DEFINE_GUIDSTRUCT("C8E11B60-0CC9-11D0-BD69-003505C103A9", KSPROPSETID_Mpeg2Vid);
|
2132
|
+
# define KSPROPSETID_Mpeg2Vid DEFINE_GUIDNAMED(KSPROPSETID_Mpeg2Vid)
|
2133
|
+
|
2134
|
+
typedef enum
|
2135
|
+
{
|
2136
|
+
KSPROPERTY_MPEG2VID_MODES,
|
2137
|
+
KSPROPERTY_MPEG2VID_CUR_MODE,
|
2138
|
+
KSPROPERTY_MPEG2VID_4_3_RECT,
|
2139
|
+
KSPROPERTY_MPEG2VID_16_9_RECT,
|
2140
|
+
KSPROPERTY_MPEG2VID_16_9_PANSCAN
|
2141
|
+
}KSPROPERTY_MPEG2VID;
|
2142
|
+
|
2143
|
+
# define KSMPEGVIDMODE_PANSCAN 0x0001
|
2144
|
+
# define KSMPEGVIDMODE_LTRBOX 0x0002
|
2145
|
+
# define KSMPEGVIDMODE_SCALE 0x0004
|
2146
|
+
|
2147
|
+
typedef struct _KSMPEGVID_RECT
|
2148
|
+
{
|
2149
|
+
ULONG StartX;
|
2150
|
+
ULONG StartY;
|
2151
|
+
ULONG EndX;
|
2152
|
+
ULONG EndY;
|
2153
|
+
}KSMPEGVID_RECT, * PKSMPEGVID_RECT;
|
2154
|
+
|
2155
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_MPEG2_AUDIO \
|
2156
|
+
0xe06d802bL, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2157
|
+
DEFINE_GUIDSTRUCT("e06d802b-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_MPEG2_AUDIO);
|
2158
|
+
# define KSDATAFORMAT_SUBTYPE_MPEG2_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MPEG2_AUDIO)
|
2159
|
+
|
2160
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_MPEG2_AUDIO \
|
2161
|
+
0xe06d80e5L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2162
|
+
DEFINE_GUIDSTRUCT("e06d80e5-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SPECIFIER_MPEG2_AUDIO);
|
2163
|
+
# define KSDATAFORMAT_SPECIFIER_MPEG2_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_MPEG2_AUDIO)
|
2164
|
+
|
2165
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_LPCM_AUDIO \
|
2166
|
+
0xe06d8032L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2167
|
+
DEFINE_GUIDSTRUCT("e06d8032-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_LPCM_AUDIO);
|
2168
|
+
# define KSDATAFORMAT_SUBTYPE_LPCM_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_LPCM_AUDIO)
|
2169
|
+
|
2170
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_LPCM_AUDIO \
|
2171
|
+
0xe06d80e6L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2172
|
+
DEFINE_GUIDSTRUCT("e06d80e6-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SPECIFIER_LPCM_AUDIO);
|
2173
|
+
# define KSDATAFORMAT_SPECIFIER_LPCM_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_LPCM_AUDIO)
|
2174
|
+
|
2175
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_AC3_AUDIO \
|
2176
|
+
0xe06d802cL, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2177
|
+
DEFINE_GUIDSTRUCT("e06d802c-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_AC3_AUDIO);
|
2178
|
+
# define KSDATAFORMAT_SUBTYPE_AC3_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_AC3_AUDIO)
|
2179
|
+
|
2180
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_AC3_AUDIO \
|
2181
|
+
0xe06d80e4L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2182
|
+
DEFINE_GUIDSTRUCT("e06d80e4-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SPECIFIER_AC3_AUDIO);
|
2183
|
+
# define KSDATAFORMAT_SPECIFIER_AC3_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_AC3_AUDIO)
|
2184
|
+
|
2185
|
+
# define STATIC_KSPROPSETID_AC3 \
|
2186
|
+
0xBFABE720L, 0x6E1F, 0x11D0, 0xBC, 0xF2, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00
|
2187
|
+
DEFINE_GUIDSTRUCT("BFABE720-6E1F-11D0-BCF2-444553540000", KSPROPSETID_AC3);
|
2188
|
+
# define KSPROPSETID_AC3 DEFINE_GUIDNAMED(KSPROPSETID_AC3)
|
2189
|
+
|
2190
|
+
typedef enum
|
2191
|
+
{
|
2192
|
+
KSPROPERTY_AC3_ERROR_CONCEALMENT = 1,
|
2193
|
+
KSPROPERTY_AC3_ALTERNATE_AUDIO,
|
2194
|
+
KSPROPERTY_AC3_DOWNMIX,
|
2195
|
+
KSPROPERTY_AC3_BIT_STREAM_MODE,
|
2196
|
+
KSPROPERTY_AC3_DIALOGUE_LEVEL,
|
2197
|
+
KSPROPERTY_AC3_LANGUAGE_CODE,
|
2198
|
+
KSPROPERTY_AC3_ROOM_TYPE
|
2199
|
+
}KSPROPERTY_AC3;
|
2200
|
+
|
2201
|
+
typedef struct
|
2202
|
+
{
|
2203
|
+
WINBOOL fRepeatPreviousBlock;
|
2204
|
+
WINBOOL fErrorInCurrentBlock;
|
2205
|
+
}KSAC3_ERROR_CONCEALMENT, * PKSAC3_ERROR_CONCEALMENT;
|
2206
|
+
|
2207
|
+
typedef struct
|
2208
|
+
{
|
2209
|
+
WINBOOL fStereo;
|
2210
|
+
ULONG DualMode;
|
2211
|
+
}KSAC3_ALTERNATE_AUDIO, * PKSAC3_ALTERNATE_AUDIO;
|
2212
|
+
|
2213
|
+
# define KSAC3_ALTERNATE_AUDIO_1 1
|
2214
|
+
# define KSAC3_ALTERNATE_AUDIO_2 2
|
2215
|
+
# define KSAC3_ALTERNATE_AUDIO_BOTH 3
|
2216
|
+
|
2217
|
+
typedef struct
|
2218
|
+
{
|
2219
|
+
WINBOOL fDownMix;
|
2220
|
+
WINBOOL fDolbySurround;
|
2221
|
+
}KSAC3_DOWNMIX, * PKSAC3_DOWNMIX;
|
2222
|
+
|
2223
|
+
typedef struct
|
2224
|
+
{
|
2225
|
+
LONG BitStreamMode;
|
2226
|
+
}KSAC3_BIT_STREAM_MODE, * PKSAC3_BIT_STREAM_MODE;
|
2227
|
+
|
2228
|
+
# define KSAC3_SERVICE_MAIN_AUDIO 0
|
2229
|
+
# define KSAC3_SERVICE_NO_DIALOG 1
|
2230
|
+
# define KSAC3_SERVICE_VISUALLY_IMPAIRED 2
|
2231
|
+
# define KSAC3_SERVICE_HEARING_IMPAIRED 3
|
2232
|
+
# define KSAC3_SERVICE_DIALOG_ONLY 4
|
2233
|
+
# define KSAC3_SERVICE_COMMENTARY 5
|
2234
|
+
# define KSAC3_SERVICE_EMERGENCY_FLASH 6
|
2235
|
+
# define KSAC3_SERVICE_VOICE_OVER 7
|
2236
|
+
|
2237
|
+
typedef struct
|
2238
|
+
{
|
2239
|
+
ULONG DialogueLevel;
|
2240
|
+
}KSAC3_DIALOGUE_LEVEL, * PKSAC3_DIALOGUE_LEVEL;
|
2241
|
+
|
2242
|
+
typedef struct
|
2243
|
+
{
|
2244
|
+
WINBOOL fLargeRoom;
|
2245
|
+
}KSAC3_ROOM_TYPE, * PKSAC3_ROOM_TYPE;
|
2246
|
+
|
2247
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_DTS_AUDIO \
|
2248
|
+
0xe06d8033L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2249
|
+
DEFINE_GUIDSTRUCT("e06d8033-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_DTS_AUDIO);
|
2250
|
+
# define KSDATAFORMAT_SUBTYPE_DTS_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_DTS_AUDIO)
|
2251
|
+
|
2252
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_SDDS_AUDIO \
|
2253
|
+
0xe06d8034L, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2254
|
+
DEFINE_GUIDSTRUCT("e06d8034-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_SDDS_AUDIO);
|
2255
|
+
# define KSDATAFORMAT_SUBTYPE_SDDS_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_SDDS_AUDIO)
|
2256
|
+
|
2257
|
+
# define STATIC_KSPROPSETID_AudioDecoderOut \
|
2258
|
+
0x6ca6e020L, 0x43bd, 0x11d0, 0xbd, 0x6a, 0x00, 0x35, 0x05, 0xc1, 0x03, 0xa9
|
2259
|
+
DEFINE_GUIDSTRUCT("6ca6e020-43bd-11d0-bd6a-003505c103a9", KSPROPSETID_AudioDecoderOut);
|
2260
|
+
# define KSPROPSETID_AudioDecoderOut DEFINE_GUIDNAMED(KSPROPSETID_AudioDecoderOut)
|
2261
|
+
|
2262
|
+
typedef enum
|
2263
|
+
{
|
2264
|
+
KSPROPERTY_AUDDECOUT_MODES,
|
2265
|
+
KSPROPERTY_AUDDECOUT_CUR_MODE
|
2266
|
+
}KSPROPERTY_AUDDECOUT;
|
2267
|
+
|
2268
|
+
# define KSAUDDECOUTMODE_STEREO_ANALOG 0x0001
|
2269
|
+
# define KSAUDDECOUTMODE_PCM_51 0x0002
|
2270
|
+
# define KSAUDDECOUTMODE_SPDIFF 0x0004
|
2271
|
+
|
2272
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_SUBPICTURE \
|
2273
|
+
0xe06d802dL, 0xdb46, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea
|
2274
|
+
DEFINE_GUIDSTRUCT("e06d802d-db46-11cf-b4d1-00805f6cbbea", KSDATAFORMAT_SUBTYPE_SUBPICTURE);
|
2275
|
+
# define KSDATAFORMAT_SUBTYPE_SUBPICTURE DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_SUBPICTURE)
|
2276
|
+
|
2277
|
+
# define STATIC_KSPROPSETID_DvdSubPic \
|
2278
|
+
0xac390460L, 0x43af, 0x11d0, 0xbd, 0x6a, 0x00, 0x35, 0x05, 0xc1, 0x03, 0xa9
|
2279
|
+
DEFINE_GUIDSTRUCT("ac390460-43af-11d0-bd6a-003505c103a9", KSPROPSETID_DvdSubPic);
|
2280
|
+
# define KSPROPSETID_DvdSubPic DEFINE_GUIDNAMED(KSPROPSETID_DvdSubPic)
|
2281
|
+
|
2282
|
+
typedef enum
|
2283
|
+
{
|
2284
|
+
KSPROPERTY_DVDSUBPIC_PALETTE,
|
2285
|
+
KSPROPERTY_DVDSUBPIC_HLI,
|
2286
|
+
KSPROPERTY_DVDSUBPIC_COMPOSIT_ON
|
2287
|
+
}KSPROPERTY_DVDSUBPIC;
|
2288
|
+
|
2289
|
+
typedef struct _KS_DVD_YCrCb
|
2290
|
+
{
|
2291
|
+
UCHAR Reserved;
|
2292
|
+
UCHAR Y;
|
2293
|
+
UCHAR Cr;
|
2294
|
+
UCHAR Cb;
|
2295
|
+
}KS_DVD_YCrCb, * PKS_DVD_YCrCb;
|
2296
|
+
|
2297
|
+
typedef struct _KS_DVD_YUV
|
2298
|
+
{
|
2299
|
+
UCHAR Reserved;
|
2300
|
+
UCHAR Y;
|
2301
|
+
UCHAR V;
|
2302
|
+
UCHAR U;
|
2303
|
+
}KS_DVD_YUV, * PKS_DVD_YUV;
|
2304
|
+
|
2305
|
+
typedef struct _KSPROPERTY_SPPAL
|
2306
|
+
{
|
2307
|
+
KS_DVD_YUV sppal[16];
|
2308
|
+
}KSPROPERTY_SPPAL, * PKSPROPERTY_SPPAL;
|
2309
|
+
|
2310
|
+
typedef struct _KS_COLCON
|
2311
|
+
{
|
2312
|
+
UCHAR emph1col : 4;
|
2313
|
+
UCHAR emph2col : 4;
|
2314
|
+
UCHAR backcol : 4;
|
2315
|
+
UCHAR patcol : 4;
|
2316
|
+
UCHAR emph1con : 4;
|
2317
|
+
UCHAR emph2con : 4;
|
2318
|
+
UCHAR backcon : 4;
|
2319
|
+
UCHAR patcon : 4;
|
2320
|
+
}KS_COLCON, * PKS_COLCON;
|
2321
|
+
|
2322
|
+
typedef struct _KSPROPERTY_SPHLI
|
2323
|
+
{
|
2324
|
+
USHORT HLISS;
|
2325
|
+
USHORT Reserved;
|
2326
|
+
ULONG StartPTM;
|
2327
|
+
ULONG EndPTM;
|
2328
|
+
USHORT StartX;
|
2329
|
+
USHORT StartY;
|
2330
|
+
USHORT StopX;
|
2331
|
+
USHORT StopY;
|
2332
|
+
KS_COLCON ColCon;
|
2333
|
+
}KSPROPERTY_SPHLI, * PKSPROPERTY_SPHLI;
|
2334
|
+
|
2335
|
+
typedef WINBOOL KSPROPERTY_COMPOSIT_ON, * PKSPROPERTY_COMPOSIT_ON;
|
2336
|
+
|
2337
|
+
# define STATIC_KSPROPSETID_CopyProt \
|
2338
|
+
0x0E8A0A40L, 0x6AEF, 0x11D0, 0x9E, 0xD0, 0x00, 0xA0, 0x24, 0xCA, 0x19, 0xB3
|
2339
|
+
DEFINE_GUIDSTRUCT("0E8A0A40-6AEF-11D0-9ED0-00A024CA19B3", KSPROPSETID_CopyProt);
|
2340
|
+
# define KSPROPSETID_CopyProt DEFINE_GUIDNAMED(KSPROPSETID_CopyProt)
|
2341
|
+
|
2342
|
+
typedef enum
|
2343
|
+
{
|
2344
|
+
KSPROPERTY_DVDCOPY_CHLG_KEY = 0x01,
|
2345
|
+
KSPROPERTY_DVDCOPY_DVD_KEY1,
|
2346
|
+
KSPROPERTY_DVDCOPY_DEC_KEY2,
|
2347
|
+
KSPROPERTY_DVDCOPY_TITLE_KEY,
|
2348
|
+
KSPROPERTY_COPY_MACROVISION,
|
2349
|
+
KSPROPERTY_DVDCOPY_REGION,
|
2350
|
+
KSPROPERTY_DVDCOPY_SET_COPY_STATE,
|
2351
|
+
KSPROPERTY_DVDCOPY_DISC_KEY = 0x80
|
2352
|
+
}KSPROPERTY_COPYPROT;
|
2353
|
+
|
2354
|
+
typedef struct _KS_DVDCOPY_CHLGKEY
|
2355
|
+
{
|
2356
|
+
BYTE ChlgKey[10];
|
2357
|
+
BYTE Reserved[2];
|
2358
|
+
}KS_DVDCOPY_CHLGKEY, * PKS_DVDCOPY_CHLGKEY;
|
2359
|
+
|
2360
|
+
typedef struct _KS_DVDCOPY_BUSKEY
|
2361
|
+
{
|
2362
|
+
BYTE BusKey[5];
|
2363
|
+
BYTE Reserved[1];
|
2364
|
+
}KS_DVDCOPY_BUSKEY, * PKS_DVDCOPY_BUSKEY;
|
2365
|
+
|
2366
|
+
typedef struct _KS_DVDCOPY_DISCKEY
|
2367
|
+
{
|
2368
|
+
BYTE DiscKey[2048];
|
2369
|
+
}KS_DVDCOPY_DISCKEY, * PKS_DVDCOPY_DISCKEY;
|
2370
|
+
|
2371
|
+
typedef struct _KS_DVDCOPY_REGION
|
2372
|
+
{
|
2373
|
+
UCHAR Reserved;
|
2374
|
+
UCHAR RegionData;
|
2375
|
+
UCHAR Reserved2[2];
|
2376
|
+
}KS_DVDCOPY_REGION, * PKS_DVDCOPY_REGION;
|
2377
|
+
|
2378
|
+
typedef struct _KS_DVDCOPY_TITLEKEY
|
2379
|
+
{
|
2380
|
+
ULONG KeyFlags;
|
2381
|
+
ULONG ReservedNT[2];
|
2382
|
+
UCHAR TitleKey[6];
|
2383
|
+
UCHAR Reserved[2];
|
2384
|
+
}KS_DVDCOPY_TITLEKEY, * PKS_DVDCOPY_TITLEKEY;
|
2385
|
+
|
2386
|
+
typedef struct _KS_COPY_MACROVISION
|
2387
|
+
{
|
2388
|
+
ULONG MACROVISIONLevel;
|
2389
|
+
}KS_COPY_MACROVISION, * PKS_COPY_MACROVISION;
|
2390
|
+
|
2391
|
+
typedef struct _KS_DVDCOPY_SET_COPY_STATE
|
2392
|
+
{
|
2393
|
+
ULONG DVDCopyState;
|
2394
|
+
}KS_DVDCOPY_SET_COPY_STATE, * PKS_DVDCOPY_SET_COPY_STATE;
|
2395
|
+
|
2396
|
+
typedef enum
|
2397
|
+
{
|
2398
|
+
KS_DVDCOPYSTATE_INITIALIZE,
|
2399
|
+
KS_DVDCOPYSTATE_INITIALIZE_TITLE,
|
2400
|
+
KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED,
|
2401
|
+
KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED,
|
2402
|
+
KS_DVDCOPYSTATE_DONE
|
2403
|
+
}KS_DVDCOPYSTATE;
|
2404
|
+
|
2405
|
+
typedef enum
|
2406
|
+
{
|
2407
|
+
KS_MACROVISION_DISABLED,
|
2408
|
+
KS_MACROVISION_LEVEL1,
|
2409
|
+
KS_MACROVISION_LEVEL2,
|
2410
|
+
KS_MACROVISION_LEVEL3
|
2411
|
+
}KS_COPY_MACROVISION_LEVEL, * PKS_COPY_MACROVISION_LEVEL;
|
2412
|
+
|
2413
|
+
# define KS_DVD_CGMS_RESERVED_MASK 0x00000078
|
2414
|
+
|
2415
|
+
# define KS_DVD_CGMS_COPY_PROTECT_MASK 0x00000018
|
2416
|
+
# define KS_DVD_CGMS_COPY_PERMITTED 0x00000000
|
2417
|
+
# define KS_DVD_CGMS_COPY_ONCE 0x00000010
|
2418
|
+
# define KS_DVD_CGMS_NO_COPY 0x00000018
|
2419
|
+
|
2420
|
+
# define KS_DVD_COPYRIGHT_MASK 0x00000040
|
2421
|
+
# define KS_DVD_NOT_COPYRIGHTED 0x00000000
|
2422
|
+
# define KS_DVD_COPYRIGHTED 0x00000040
|
2423
|
+
|
2424
|
+
# define KS_DVD_SECTOR_PROTECT_MASK 0x00000020
|
2425
|
+
# define KS_DVD_SECTOR_NOT_PROTECTED 0x00000000
|
2426
|
+
# define KS_DVD_SECTOR_PROTECTED 0x00000020
|
2427
|
+
|
2428
|
+
# define STATIC_KSCATEGORY_TVTUNER \
|
2429
|
+
0xa799a800L, 0xa46d, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0x24, 0x01, 0xdc, 0xd4
|
2430
|
+
DEFINE_GUIDSTRUCT("a799a800-a46d-11d0-a18c-00a02401dcd4", KSCATEGORY_TVTUNER);
|
2431
|
+
# define KSCATEGORY_TVTUNER DEFINE_GUIDNAMED(KSCATEGORY_TVTUNER)
|
2432
|
+
|
2433
|
+
# define STATIC_KSCATEGORY_CROSSBAR \
|
2434
|
+
0xa799a801L, 0xa46d, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0x24, 0x01, 0xdc, 0xd4
|
2435
|
+
DEFINE_GUIDSTRUCT("a799a801-a46d-11d0-a18c-00a02401dcd4", KSCATEGORY_CROSSBAR);
|
2436
|
+
# define KSCATEGORY_CROSSBAR DEFINE_GUIDNAMED(KSCATEGORY_CROSSBAR)
|
2437
|
+
|
2438
|
+
# define STATIC_KSCATEGORY_TVAUDIO \
|
2439
|
+
0xa799a802L, 0xa46d, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0x24, 0x01, 0xdc, 0xd4
|
2440
|
+
DEFINE_GUIDSTRUCT("a799a802-a46d-11d0-a18c-00a02401dcd4", KSCATEGORY_TVAUDIO);
|
2441
|
+
# define KSCATEGORY_TVAUDIO DEFINE_GUIDNAMED(KSCATEGORY_TVAUDIO)
|
2442
|
+
|
2443
|
+
# define STATIC_KSCATEGORY_VPMUX \
|
2444
|
+
0xa799a803L, 0xa46d, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0x24, 0x01, 0xdc, 0xd4
|
2445
|
+
DEFINE_GUIDSTRUCT("a799a803-a46d-11d0-a18c-00a02401dcd4", KSCATEGORY_VPMUX);
|
2446
|
+
# define KSCATEGORY_VPMUX DEFINE_GUIDNAMED(KSCATEGORY_VPMUX)
|
2447
|
+
|
2448
|
+
# define STATIC_KSCATEGORY_VBICODEC \
|
2449
|
+
0x07dad660L, 0x22f1, 0x11d1, 0xa9, 0xf4, 0x00, 0xc0, 0x4f, 0xbb, 0xde, 0x8f
|
2450
|
+
DEFINE_GUIDSTRUCT("07dad660-22f1-11d1-a9f4-00c04fbbde8f", KSCATEGORY_VBICODEC);
|
2451
|
+
# define KSCATEGORY_VBICODEC DEFINE_GUIDNAMED(KSCATEGORY_VBICODEC)
|
2452
|
+
|
2453
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_VPVideo \
|
2454
|
+
0x5a9b6a40L, 0x1a22, 0x11d1, 0xba, 0xd9, 0x0, 0x60, 0x97, 0x44, 0x11, 0x1a
|
2455
|
+
DEFINE_GUIDSTRUCT("5a9b6a40-1a22-11d1-bad9-00609744111a", KSDATAFORMAT_SUBTYPE_VPVideo);
|
2456
|
+
# define KSDATAFORMAT_SUBTYPE_VPVideo DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_VPVideo)
|
2457
|
+
|
2458
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_VPVBI \
|
2459
|
+
0x5a9b6a41L, 0x1a22, 0x11d1, 0xba, 0xd9, 0x0, 0x60, 0x97, 0x44, 0x11, 0x1a
|
2460
|
+
DEFINE_GUIDSTRUCT("5a9b6a41-1a22-11d1-bad9-00609744111a", KSDATAFORMAT_SUBTYPE_VPVBI);
|
2461
|
+
# define KSDATAFORMAT_SUBTYPE_VPVBI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_VPVBI)
|
2462
|
+
|
2463
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_VIDEOINFO \
|
2464
|
+
0x05589f80L, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a
|
2465
|
+
DEFINE_GUIDSTRUCT("05589f80-c356-11ce-bf01-00aa0055595a", KSDATAFORMAT_SPECIFIER_VIDEOINFO);
|
2466
|
+
# define KSDATAFORMAT_SPECIFIER_VIDEOINFO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_VIDEOINFO)
|
2467
|
+
|
2468
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_VIDEOINFO2 \
|
2469
|
+
0xf72a76A0L, 0xeb0a, 0x11d0, 0xac, 0xe4, 0x00, 0x00, 0xc0, 0xcc, 0x16, 0xba
|
2470
|
+
DEFINE_GUIDSTRUCT("f72a76A0-eb0a-11d0-ace4-0000c0cc16ba", KSDATAFORMAT_SPECIFIER_VIDEOINFO2);
|
2471
|
+
# define KSDATAFORMAT_SPECIFIER_VIDEOINFO2 DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_VIDEOINFO2)
|
2472
|
+
|
2473
|
+
# define STATIC_KSDATAFORMAT_TYPE_ANALOGVIDEO \
|
2474
|
+
0x0482dde1L, 0x7817, 0x11cf, 0x8a, 0x03, 0x00, 0xaa, 0x00, 0x6e, 0xcb, 0x65
|
2475
|
+
DEFINE_GUIDSTRUCT("0482dde1-7817-11cf-8a03-00aa006ecb65", KSDATAFORMAT_TYPE_ANALOGVIDEO);
|
2476
|
+
# define KSDATAFORMAT_TYPE_ANALOGVIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_ANALOGVIDEO)
|
2477
|
+
|
2478
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_ANALOGVIDEO \
|
2479
|
+
0x0482dde0L, 0x7817, 0x11cf, 0x8a, 0x03, 0x00, 0xaa, 0x00, 0x6e, 0xcb, 0x65
|
2480
|
+
DEFINE_GUIDSTRUCT("0482dde0-7817-11cf-8a03-00aa006ecb65", KSDATAFORMAT_SPECIFIER_ANALOGVIDEO);
|
2481
|
+
# define KSDATAFORMAT_SPECIFIER_ANALOGVIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_ANALOGVIDEO)
|
2482
|
+
|
2483
|
+
# define STATIC_KSDATAFORMAT_TYPE_ANALOGAUDIO \
|
2484
|
+
0x0482dee1L, 0x7817, 0x11cf, 0x8a, 0x03, 0x00, 0xaa, 0x00, 0x6e, 0xcb, 0x65
|
2485
|
+
DEFINE_GUIDSTRUCT("0482DEE1-7817-11cf-8a03-00aa006ecb65", KSDATAFORMAT_TYPE_ANALOGAUDIO);
|
2486
|
+
# define KSDATAFORMAT_TYPE_ANALOGAUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_ANALOGAUDIO)
|
2487
|
+
|
2488
|
+
# define STATIC_KSDATAFORMAT_SPECIFIER_VBI \
|
2489
|
+
0xf72a76e0L, 0xeb0a, 0x11d0, 0xac, 0xe4, 0x00, 0x00, 0xc0, 0xcc, 0x16, 0xba
|
2490
|
+
DEFINE_GUIDSTRUCT("f72a76e0-eb0a-11d0-ace4-0000c0cc16ba", KSDATAFORMAT_SPECIFIER_VBI);
|
2491
|
+
# define KSDATAFORMAT_SPECIFIER_VBI DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_VBI)
|
2492
|
+
|
2493
|
+
# define STATIC_KSDATAFORMAT_TYPE_VBI \
|
2494
|
+
0xf72a76e1L, 0xeb0a, 0x11d0, 0xac, 0xe4, 0x00, 0x00, 0xc0, 0xcc, 0x16, 0xba
|
2495
|
+
DEFINE_GUIDSTRUCT("f72a76e1-eb0a-11d0-ace4-0000c0cc16ba", KSDATAFORMAT_TYPE_VBI);
|
2496
|
+
# define KSDATAFORMAT_TYPE_VBI DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_VBI)
|
2497
|
+
|
2498
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_RAW8 \
|
2499
|
+
0xca20d9a0, 0x3e3e, 0x11d1, 0x9b, 0xf9, 0x0, 0xc0, 0x4f, 0xbb, 0xde, 0xbf
|
2500
|
+
DEFINE_GUIDSTRUCT("ca20d9a0-3e3e-11d1-9bf9-00c04fbbdebf", KSDATAFORMAT_SUBTYPE_RAW8);
|
2501
|
+
# define KSDATAFORMAT_SUBTYPE_RAW8 DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_RAW8)
|
2502
|
+
|
2503
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_CC \
|
2504
|
+
0x33214cc1, 0x11f, 0x11d2, 0xb4, 0xb1, 0x0, 0xa0, 0xd1, 0x2, 0xcf, 0xbe
|
2505
|
+
DEFINE_GUIDSTRUCT("33214CC1-011F-11D2-B4B1-00A0D102CFBE", KSDATAFORMAT_SUBTYPE_CC);
|
2506
|
+
# define KSDATAFORMAT_SUBTYPE_CC DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_CC)
|
2507
|
+
|
2508
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_NABTS \
|
2509
|
+
0xf72a76e2L, 0xeb0a, 0x11d0, 0xac, 0xe4, 0x00, 0x00, 0xc0, 0xcc, 0x16, 0xba
|
2510
|
+
DEFINE_GUIDSTRUCT("f72a76e2-eb0a-11d0-ace4-0000c0cc16ba", KSDATAFORMAT_SUBTYPE_NABTS);
|
2511
|
+
# define KSDATAFORMAT_SUBTYPE_NABTS DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_NABTS)
|
2512
|
+
|
2513
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_TELETEXT \
|
2514
|
+
0xf72a76e3L, 0xeb0a, 0x11d0, 0xac, 0xe4, 0x00, 0x00, 0xc0, 0xcc, 0x16, 0xba
|
2515
|
+
DEFINE_GUIDSTRUCT("f72a76e3-eb0a-11d0-ace4-0000c0cc16ba", KSDATAFORMAT_SUBTYPE_TELETEXT);
|
2516
|
+
# define KSDATAFORMAT_SUBTYPE_TELETEXT DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_TELETEXT)
|
2517
|
+
|
2518
|
+
# define KS_BI_RGB 0L
|
2519
|
+
# define KS_BI_RLE8 1L
|
2520
|
+
# define KS_BI_RLE4 2L
|
2521
|
+
# define KS_BI_BITFIELDS 3L
|
2522
|
+
|
2523
|
+
typedef struct tagKS_RGBQUAD
|
2524
|
+
{
|
2525
|
+
BYTE rgbBlue;
|
2526
|
+
BYTE rgbGreen;
|
2527
|
+
BYTE rgbRed;
|
2528
|
+
BYTE rgbReserved;
|
2529
|
+
}KS_RGBQUAD, * PKS_RGBQUAD;
|
2530
|
+
|
2531
|
+
# define KS_iPALETTE_COLORS 256
|
2532
|
+
# define KS_iEGA_COLORS 16
|
2533
|
+
# define KS_iMASK_COLORS 3
|
2534
|
+
# define KS_iTRUECOLOR 16
|
2535
|
+
# define KS_iRED 0
|
2536
|
+
# define KS_iGREEN 1
|
2537
|
+
# define KS_iBLUE 2
|
2538
|
+
# define KS_iPALETTE 8
|
2539
|
+
# define KS_iMAXBITS 8
|
2540
|
+
# define KS_SIZE_EGA_PALETTE (KS_iEGA_COLORS * sizeof(KS_RGBQUAD))
|
2541
|
+
# define KS_SIZE_PALETTE (KS_iPALETTE_COLORS * sizeof(KS_RGBQUAD))
|
2542
|
+
|
2543
|
+
typedef struct tagKS_BITMAPINFOHEADER
|
2544
|
+
{
|
2545
|
+
DWORD biSize;
|
2546
|
+
LONG biWidth;
|
2547
|
+
LONG biHeight;
|
2548
|
+
WORD biPlanes;
|
2549
|
+
WORD biBitCount;
|
2550
|
+
DWORD biCompression;
|
2551
|
+
DWORD biSizeImage;
|
2552
|
+
LONG biXPelsPerMeter;
|
2553
|
+
LONG biYPelsPerMeter;
|
2554
|
+
DWORD biClrUsed;
|
2555
|
+
DWORD biClrImportant;
|
2556
|
+
}KS_BITMAPINFOHEADER, * PKS_BITMAPINFOHEADER;
|
2557
|
+
|
2558
|
+
typedef struct tag_KS_TRUECOLORINFO
|
2559
|
+
{
|
2560
|
+
DWORD dwBitMasks[KS_iMASK_COLORS];
|
2561
|
+
KS_RGBQUAD bmiColors[KS_iPALETTE_COLORS];
|
2562
|
+
}KS_TRUECOLORINFO, * PKS_TRUECOLORINFO;
|
2563
|
+
|
2564
|
+
# define KS_WIDTHBYTES(bits) ((DWORD)(((bits) + 31) & (~31)) / 8)
|
2565
|
+
# define KS_DIBWIDTHBYTES(bi) (DWORD)KS_WIDTHBYTES((DWORD)(bi).biWidth * (DWORD)(bi).biBitCount)
|
2566
|
+
# define KS__DIBSIZE(bi) (KS_DIBWIDTHBYTES(bi) * (DWORD)(bi).biHeight)
|
2567
|
+
# define KS_DIBSIZE(bi) ((bi).biHeight < 0 ? (-1) * (KS__DIBSIZE(bi)) : KS__DIBSIZE(bi))
|
2568
|
+
|
2569
|
+
typedef LONGLONG REFERENCE_TIME;
|
2570
|
+
|
2571
|
+
typedef struct tagKS_VIDEOINFOHEADER
|
2572
|
+
{
|
2573
|
+
RECT rcSource;
|
2574
|
+
RECT rcTarget;
|
2575
|
+
DWORD dwBitRate;
|
2576
|
+
DWORD dwBitErrorRate;
|
2577
|
+
REFERENCE_TIME AvgTimePerFrame;
|
2578
|
+
KS_BITMAPINFOHEADER bmiHeader;
|
2579
|
+
}KS_VIDEOINFOHEADER, * PKS_VIDEOINFOHEADER;
|
2580
|
+
|
2581
|
+
typedef struct tagKS_VIDEOINFO
|
2582
|
+
{
|
2583
|
+
RECT rcSource;
|
2584
|
+
RECT rcTarget;
|
2585
|
+
DWORD dwBitRate;
|
2586
|
+
DWORD dwBitErrorRate;
|
2587
|
+
REFERENCE_TIME AvgTimePerFrame;
|
2588
|
+
KS_BITMAPINFOHEADER bmiHeader;
|
2589
|
+
__MINGW_EXTENSION union
|
2590
|
+
{
|
2591
|
+
KS_RGBQUAD bmiColors[KS_iPALETTE_COLORS];
|
2592
|
+
DWORD dwBitMasks[KS_iMASK_COLORS];
|
2593
|
+
KS_TRUECOLORINFO TrueColorInfo;
|
2594
|
+
};
|
2595
|
+
}KS_VIDEOINFO, * PKS_VIDEOINFO;
|
2596
|
+
|
2597
|
+
# define KS_SIZE_MASKS (KS_iMASK_COLORS * sizeof(DWORD))
|
2598
|
+
# define KS_SIZE_PREHEADER (FIELD_OFFSET(KS_VIDEOINFOHEADER, bmiHeader))
|
2599
|
+
|
2600
|
+
# define KS_SIZE_VIDEOHEADER(pbmi) ((pbmi)->bmiHeader.biSize + KS_SIZE_PREHEADER)
|
2601
|
+
|
2602
|
+
typedef struct tagKS_VBIINFOHEADER
|
2603
|
+
{
|
2604
|
+
ULONG StartLine;
|
2605
|
+
ULONG EndLine;
|
2606
|
+
ULONG SamplingFrequency;
|
2607
|
+
ULONG MinLineStartTime;
|
2608
|
+
ULONG MaxLineStartTime;
|
2609
|
+
ULONG ActualLineStartTime;
|
2610
|
+
ULONG ActualLineEndTime;
|
2611
|
+
ULONG VideoStandard;
|
2612
|
+
ULONG SamplesPerLine;
|
2613
|
+
ULONG StrideInBytes;
|
2614
|
+
ULONG BufferSize;
|
2615
|
+
}KS_VBIINFOHEADER, * PKS_VBIINFOHEADER;
|
2616
|
+
|
2617
|
+
# define KS_VBIDATARATE_NABTS (5727272L)
|
2618
|
+
# define KS_VBIDATARATE_CC (503493L)
|
2619
|
+
# define KS_VBISAMPLINGRATE_4X_NABTS ((long)(4 * KS_VBIDATARATE_NABTS))
|
2620
|
+
# define KS_VBISAMPLINGRATE_47X_NABTS ((long)(27000000))
|
2621
|
+
# define KS_VBISAMPLINGRATE_5X_NABTS ((long)(5 * KS_VBIDATARATE_NABTS))
|
2622
|
+
|
2623
|
+
# define KS_47NABTS_SCALER (KS_VBISAMPLINGRATE_47X_NABTS / (double)KS_VBIDATARATE_NABTS)
|
2624
|
+
|
2625
|
+
typedef struct tagKS_AnalogVideoInfo
|
2626
|
+
{
|
2627
|
+
RECT rcSource;
|
2628
|
+
RECT rcTarget;
|
2629
|
+
DWORD dwActiveWidth;
|
2630
|
+
DWORD dwActiveHeight;
|
2631
|
+
REFERENCE_TIME AvgTimePerFrame;
|
2632
|
+
}KS_ANALOGVIDEOINFO, * PKS_ANALOGVIDEOINFO;
|
2633
|
+
|
2634
|
+
# define KS_TVTUNER_CHANGE_BEGIN_TUNE 0x0001L
|
2635
|
+
# define KS_TVTUNER_CHANGE_END_TUNE 0x0002L
|
2636
|
+
|
2637
|
+
typedef struct tagKS_TVTUNER_CHANGE_INFO
|
2638
|
+
{
|
2639
|
+
DWORD dwFlags;
|
2640
|
+
DWORD dwCountryCode;
|
2641
|
+
DWORD dwAnalogVideoStandard;
|
2642
|
+
DWORD dwChannel;
|
2643
|
+
}KS_TVTUNER_CHANGE_INFO, * PKS_TVTUNER_CHANGE_INFO;
|
2644
|
+
|
2645
|
+
typedef enum
|
2646
|
+
{
|
2647
|
+
KS_MPEG2Level_Low,
|
2648
|
+
KS_MPEG2Level_Main,
|
2649
|
+
KS_MPEG2Level_High1440,
|
2650
|
+
KS_MPEG2Level_High
|
2651
|
+
}KS_MPEG2Level;
|
2652
|
+
|
2653
|
+
typedef enum
|
2654
|
+
{
|
2655
|
+
KS_MPEG2Profile_Simple,
|
2656
|
+
KS_MPEG2Profile_Main,
|
2657
|
+
KS_MPEG2Profile_SNRScalable,
|
2658
|
+
KS_MPEG2Profile_SpatiallyScalable,
|
2659
|
+
KS_MPEG2Profile_High
|
2660
|
+
}KS_MPEG2Profile;
|
2661
|
+
|
2662
|
+
# define KS_INTERLACE_IsInterlaced 0x00000001
|
2663
|
+
# define KS_INTERLACE_1FieldPerSample 0x00000002
|
2664
|
+
# define KS_INTERLACE_Field1First 0x00000004
|
2665
|
+
# define KS_INTERLACE_UNUSED 0x00000008
|
2666
|
+
# define KS_INTERLACE_FieldPatternMask 0x00000030
|
2667
|
+
# define KS_INTERLACE_FieldPatField1Only 0x00000000
|
2668
|
+
# define KS_INTERLACE_FieldPatField2Only 0x00000010
|
2669
|
+
# define KS_INTERLACE_FieldPatBothRegular 0x00000020
|
2670
|
+
# define KS_INTERLACE_FieldPatBothIrregular 0x00000030
|
2671
|
+
# define KS_INTERLACE_DisplayModeMask 0x000000c0
|
2672
|
+
# define KS_INTERLACE_DisplayModeBobOnly 0x00000000
|
2673
|
+
# define KS_INTERLACE_DisplayModeWeaveOnly 0x00000040
|
2674
|
+
# define KS_INTERLACE_DisplayModeBobOrWeave 0x00000080
|
2675
|
+
|
2676
|
+
# define KS_MPEG2_DoPanScan 0x00000001
|
2677
|
+
# define KS_MPEG2_DVDLine21Field1 0x00000002
|
2678
|
+
# define KS_MPEG2_DVDLine21Field2 0x00000004
|
2679
|
+
# define KS_MPEG2_SourceIsLetterboxed 0x00000008
|
2680
|
+
# define KS_MPEG2_FilmCameraMode 0x00000010
|
2681
|
+
# define KS_MPEG2_LetterboxAnalogOut 0x00000020
|
2682
|
+
# define KS_MPEG2_DSS_UserData 0x00000040
|
2683
|
+
# define KS_MPEG2_DVB_UserData 0x00000080
|
2684
|
+
# define KS_MPEG2_27MhzTimebase 0x00000100
|
2685
|
+
|
2686
|
+
typedef struct tagKS_VIDEOINFOHEADER2
|
2687
|
+
{
|
2688
|
+
RECT rcSource;
|
2689
|
+
RECT rcTarget;
|
2690
|
+
DWORD dwBitRate;
|
2691
|
+
DWORD dwBitErrorRate;
|
2692
|
+
REFERENCE_TIME AvgTimePerFrame;
|
2693
|
+
DWORD dwInterlaceFlags;
|
2694
|
+
DWORD dwCopyProtectFlags;
|
2695
|
+
DWORD dwPictAspectRatioX;
|
2696
|
+
DWORD dwPictAspectRatioY;
|
2697
|
+
DWORD dwReserved1;
|
2698
|
+
DWORD dwReserved2;
|
2699
|
+
KS_BITMAPINFOHEADER bmiHeader;
|
2700
|
+
}KS_VIDEOINFOHEADER2, * PKS_VIDEOINFOHEADER2;
|
2701
|
+
|
2702
|
+
typedef struct tagKS_MPEG1VIDEOINFO
|
2703
|
+
{
|
2704
|
+
KS_VIDEOINFOHEADER hdr;
|
2705
|
+
DWORD dwStartTimeCode;
|
2706
|
+
DWORD cbSequenceHeader;
|
2707
|
+
BYTE bSequenceHeader[1];
|
2708
|
+
}KS_MPEG1VIDEOINFO, * PKS_MPEG1VIDEOINFO;
|
2709
|
+
|
2710
|
+
# define KS_MAX_SIZE_MPEG1_SEQUENCE_INFO 140
|
2711
|
+
# define KS_SIZE_MPEG1VIDEOINFO(pv) (FIELD_OFFSET(KS_MPEG1VIDEOINFO, bSequenceHeader[0]) + (pv)->cbSequenceHeader)
|
2712
|
+
# define KS_MPEG1_SEQUENCE_INFO(pv) ((const BYTE*)(pv)->bSequenceHeader)
|
2713
|
+
|
2714
|
+
typedef struct tagKS_MPEGVIDEOINFO2
|
2715
|
+
{
|
2716
|
+
KS_VIDEOINFOHEADER2 hdr;
|
2717
|
+
DWORD dwStartTimeCode;
|
2718
|
+
DWORD cbSequenceHeader;
|
2719
|
+
DWORD dwProfile;
|
2720
|
+
DWORD dwLevel;
|
2721
|
+
DWORD dwFlags;
|
2722
|
+
DWORD bSequenceHeader[1];
|
2723
|
+
}KS_MPEGVIDEOINFO2, * PKS_MPEGVIDEOINFO2;
|
2724
|
+
|
2725
|
+
# define KS_SIZE_MPEGVIDEOINFO2(pv) (FIELD_OFFSET(KS_MPEGVIDEOINFO2, bSequenceHeader[0]) + (pv)->cbSequenceHeader)
|
2726
|
+
# define KS_MPEG1_SEQUENCE_INFO(pv) ((const BYTE*)(pv)->bSequenceHeader)
|
2727
|
+
|
2728
|
+
# define KS_MPEGAUDIOINFO_27MhzTimebase 0x00000001
|
2729
|
+
|
2730
|
+
typedef struct tagKS_MPEAUDIOINFO
|
2731
|
+
{
|
2732
|
+
DWORD dwFlags;
|
2733
|
+
DWORD dwReserved1;
|
2734
|
+
DWORD dwReserved2;
|
2735
|
+
DWORD dwReserved3;
|
2736
|
+
}KS_MPEGAUDIOINFO, * PKS_MPEGAUDIOINFO;
|
2737
|
+
|
2738
|
+
typedef struct tagKS_DATAFORMAT_VIDEOINFOHEADER
|
2739
|
+
{
|
2740
|
+
KSDATAFORMAT DataFormat;
|
2741
|
+
KS_VIDEOINFOHEADER VideoInfoHeader;
|
2742
|
+
}KS_DATAFORMAT_VIDEOINFOHEADER, * PKS_DATAFORMAT_VIDEOINFOHEADER;
|
2743
|
+
|
2744
|
+
typedef struct tagKS_DATAFORMAT_VIDEOINFOHEADER2
|
2745
|
+
{
|
2746
|
+
KSDATAFORMAT DataFormat;
|
2747
|
+
KS_VIDEOINFOHEADER2 VideoInfoHeader2;
|
2748
|
+
}KS_DATAFORMAT_VIDEOINFOHEADER2, * PKS_DATAFORMAT_VIDEOINFOHEADER2;
|
2749
|
+
|
2750
|
+
typedef struct tagKS_DATAFORMAT_VIDEOINFO_PALETTE
|
2751
|
+
{
|
2752
|
+
KSDATAFORMAT DataFormat;
|
2753
|
+
KS_VIDEOINFO VideoInfo;
|
2754
|
+
}KS_DATAFORMAT_VIDEOINFO_PALETTE, * PKS_DATAFORMAT_VIDEOINFO_PALETTE;
|
2755
|
+
|
2756
|
+
typedef struct tagKS_DATAFORMAT_VBIINFOHEADER
|
2757
|
+
{
|
2758
|
+
KSDATAFORMAT DataFormat;
|
2759
|
+
KS_VBIINFOHEADER VBIInfoHeader;
|
2760
|
+
}KS_DATAFORMAT_VBIINFOHEADER, * PKS_DATAFORMAT_VBIINFOHEADER;
|
2761
|
+
|
2762
|
+
typedef struct _KS_VIDEO_STREAM_CONFIG_CAPS
|
2763
|
+
{
|
2764
|
+
GUID guid;
|
2765
|
+
ULONG VideoStandard;
|
2766
|
+
SIZE InputSize;
|
2767
|
+
SIZE MinCroppingSize;
|
2768
|
+
SIZE MaxCroppingSize;
|
2769
|
+
int CropGranularityX;
|
2770
|
+
int CropGranularityY;
|
2771
|
+
int CropAlignX;
|
2772
|
+
int CropAlignY;
|
2773
|
+
SIZE MinOutputSize;
|
2774
|
+
SIZE MaxOutputSize;
|
2775
|
+
int OutputGranularityX;
|
2776
|
+
int OutputGranularityY;
|
2777
|
+
int StretchTapsX;
|
2778
|
+
int StretchTapsY;
|
2779
|
+
int ShrinkTapsX;
|
2780
|
+
int ShrinkTapsY;
|
2781
|
+
LONGLONG MinFrameInterval;
|
2782
|
+
LONGLONG MaxFrameInterval;
|
2783
|
+
LONG MinBitsPerSecond;
|
2784
|
+
LONG MaxBitsPerSecond;
|
2785
|
+
}KS_VIDEO_STREAM_CONFIG_CAPS, * PKS_VIDEO_STREAM_CONFIG_CAPS;
|
2786
|
+
|
2787
|
+
typedef struct tagKS_DATARANGE_VIDEO
|
2788
|
+
{
|
2789
|
+
KSDATARANGE DataRange;
|
2790
|
+
WINBOOL bFixedSizeSamples;
|
2791
|
+
WINBOOL bTemporalCompression;
|
2792
|
+
DWORD StreamDescriptionFlags;
|
2793
|
+
DWORD MemoryAllocationFlags;
|
2794
|
+
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
2795
|
+
KS_VIDEOINFOHEADER VideoInfoHeader;
|
2796
|
+
}KS_DATARANGE_VIDEO, * PKS_DATARANGE_VIDEO;
|
2797
|
+
|
2798
|
+
typedef struct tagKS_DATARANGE_VIDEO2
|
2799
|
+
{
|
2800
|
+
KSDATARANGE DataRange;
|
2801
|
+
WINBOOL bFixedSizeSamples;
|
2802
|
+
WINBOOL bTemporalCompression;
|
2803
|
+
DWORD StreamDescriptionFlags;
|
2804
|
+
DWORD MemoryAllocationFlags;
|
2805
|
+
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
2806
|
+
KS_VIDEOINFOHEADER2 VideoInfoHeader;
|
2807
|
+
}KS_DATARANGE_VIDEO2, * PKS_DATARANGE_VIDEO2;
|
2808
|
+
|
2809
|
+
typedef struct tagKS_DATARANGE_MPEG1_VIDEO
|
2810
|
+
{
|
2811
|
+
KSDATARANGE DataRange;
|
2812
|
+
WINBOOL bFixedSizeSamples;
|
2813
|
+
WINBOOL bTemporalCompression;
|
2814
|
+
DWORD StreamDescriptionFlags;
|
2815
|
+
DWORD MemoryAllocationFlags;
|
2816
|
+
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
2817
|
+
KS_MPEG1VIDEOINFO VideoInfoHeader;
|
2818
|
+
}KS_DATARANGE_MPEG1_VIDEO, * PKS_DATARANGE_MPEG1_VIDEO;
|
2819
|
+
|
2820
|
+
typedef struct tagKS_DATARANGE_MPEG2_VIDEO
|
2821
|
+
{
|
2822
|
+
KSDATARANGE DataRange;
|
2823
|
+
WINBOOL bFixedSizeSamples;
|
2824
|
+
WINBOOL bTemporalCompression;
|
2825
|
+
DWORD StreamDescriptionFlags;
|
2826
|
+
DWORD MemoryAllocationFlags;
|
2827
|
+
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
2828
|
+
KS_MPEGVIDEOINFO2 VideoInfoHeader;
|
2829
|
+
}KS_DATARANGE_MPEG2_VIDEO, * PKS_DATARANGE_MPEG2_VIDEO;
|
2830
|
+
|
2831
|
+
typedef struct tagKS_DATARANGE_VIDEO_PALETTE
|
2832
|
+
{
|
2833
|
+
KSDATARANGE DataRange;
|
2834
|
+
WINBOOL bFixedSizeSamples;
|
2835
|
+
WINBOOL bTemporalCompression;
|
2836
|
+
DWORD StreamDescriptionFlags;
|
2837
|
+
DWORD MemoryAllocationFlags;
|
2838
|
+
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
2839
|
+
KS_VIDEOINFO VideoInfo;
|
2840
|
+
}KS_DATARANGE_VIDEO_PALETTE, * PKS_DATARANGE_VIDEO_PALETTE;
|
2841
|
+
|
2842
|
+
typedef struct tagKS_DATARANGE_VIDEO_VBI
|
2843
|
+
{
|
2844
|
+
KSDATARANGE DataRange;
|
2845
|
+
WINBOOL bFixedSizeSamples;
|
2846
|
+
WINBOOL bTemporalCompression;
|
2847
|
+
DWORD StreamDescriptionFlags;
|
2848
|
+
DWORD MemoryAllocationFlags;
|
2849
|
+
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
2850
|
+
KS_VBIINFOHEADER VBIInfoHeader;
|
2851
|
+
}KS_DATARANGE_VIDEO_VBI, * PKS_DATARANGE_VIDEO_VBI;
|
2852
|
+
|
2853
|
+
typedef struct tagKS_DATARANGE_ANALOGVIDEO
|
2854
|
+
{
|
2855
|
+
KSDATARANGE DataRange;
|
2856
|
+
KS_ANALOGVIDEOINFO AnalogVideoInfo;
|
2857
|
+
}KS_DATARANGE_ANALOGVIDEO, * PKS_DATARANGE_ANALOGVIDEO;
|
2858
|
+
|
2859
|
+
# define KS_VIDEOSTREAM_PREVIEW 0x0001
|
2860
|
+
# define KS_VIDEOSTREAM_CAPTURE 0x0002
|
2861
|
+
# define KS_VIDEOSTREAM_VBI 0x0010
|
2862
|
+
# define KS_VIDEOSTREAM_NABTS 0x0020
|
2863
|
+
# define KS_VIDEOSTREAM_CC 0x0100
|
2864
|
+
# define KS_VIDEOSTREAM_EDS 0x0200
|
2865
|
+
# define KS_VIDEOSTREAM_TELETEXT 0x0400
|
2866
|
+
# define KS_VIDEOSTREAM_STILL 0x1000
|
2867
|
+
# define KS_VIDEOSTREAM_IS_VPE 0x8000
|
2868
|
+
|
2869
|
+
# define KS_VIDEO_ALLOC_VPE_SYSTEM 0x0001
|
2870
|
+
# define KS_VIDEO_ALLOC_VPE_DISPLAY 0x0002
|
2871
|
+
# define KS_VIDEO_ALLOC_VPE_AGP 0x0004
|
2872
|
+
|
2873
|
+
# define STATIC_KSPROPSETID_VBICAP_PROPERTIES \
|
2874
|
+
0xf162c607, 0x7b35, 0x496f, 0xad, 0x7f, 0x2d, 0xca, 0x3b, 0x46, 0xb7, 0x18
|
2875
|
+
DEFINE_GUIDSTRUCT("F162C607-7B35-496f-AD7F-2DCA3B46B718", KSPROPSETID_VBICAP_PROPERTIES);
|
2876
|
+
# define KSPROPSETID_VBICAP_PROPERTIES DEFINE_GUIDNAMED(KSPROPSETID_VBICAP_PROPERTIES)
|
2877
|
+
|
2878
|
+
typedef enum
|
2879
|
+
{
|
2880
|
+
KSPROPERTY_VBICAP_PROPERTIES_PROTECTION = 0x01
|
2881
|
+
}KSPROPERTY_VBICAP;
|
2882
|
+
|
2883
|
+
typedef struct _VBICAP_PROPERTIES_PROTECTION_S
|
2884
|
+
{
|
2885
|
+
KSPROPERTY Property;
|
2886
|
+
ULONG StreamIndex;
|
2887
|
+
ULONG Status;
|
2888
|
+
}VBICAP_PROPERTIES_PROTECTION_S, * PVBICAP_PROPERTIES_PROTECTION_S;
|
2889
|
+
|
2890
|
+
# define KS_VBICAP_PROTECTION_MV_PRESENT 0x0001L
|
2891
|
+
# define KS_VBICAP_PROTECTION_MV_HARDWARE 0x0002L
|
2892
|
+
# define KS_VBICAP_PROTECTION_MV_DETECTED 0x0004L
|
2893
|
+
|
2894
|
+
# define KS_NABTS_GROUPID_ORIGINAL_CONTENT_BASE 0x800
|
2895
|
+
# define KS_NABTS_GROUPID_ORIGINAL_CONTENT_ADVERTISER_BASE 0x810
|
2896
|
+
|
2897
|
+
# define KS_NABTS_GROUPID_PRODUCTION_COMPANY_CONTENT_BASE 0x820
|
2898
|
+
# define KS_NABTS_GROUPID_PRODUCTION_COMPANY_ADVERTISER_BASE 0x830
|
2899
|
+
|
2900
|
+
# define KS_NABTS_GROUPID_SYNDICATED_SHOW_CONTENT_BASE 0x840
|
2901
|
+
# define KS_NABTS_GROUPID_SYNDICATED_SHOW_ADVERTISER_BASE 0x850
|
2902
|
+
|
2903
|
+
# define KS_NABTS_GROUPID_NETWORK_WIDE_CONTENT_BASE 0x860
|
2904
|
+
# define KS_NABTS_GROUPID_NETWORK_WIDE_ADVERTISER_BASE 0x870
|
2905
|
+
|
2906
|
+
# define KS_NABTS_GROUPID_TELEVISION_STATION_CONTENT_BASE 0x880
|
2907
|
+
# define KS_NABTS_GROUPID_TELEVISION_STATION_ADVERTISER_BASE 0x890
|
2908
|
+
|
2909
|
+
# define KS_NABTS_GROUPID_LOCAL_CABLE_SYSTEM_CONTENT_BASE 0x8A0
|
2910
|
+
# define KS_NABTS_GROUPID_LOCAL_CABLE_SYSTEM_ADVERTISER_BASE 0x8B0
|
2911
|
+
|
2912
|
+
# define KS_NABTS_GROUPID_MICROSOFT_RESERVED_TEST_DATA_BASE 0x8F0
|
2913
|
+
|
2914
|
+
# define STATIC_KSDATAFORMAT_TYPE_NABTS \
|
2915
|
+
0xe757bca0, 0x39ac, 0x11d1, 0xa9, 0xf5, 0x0, 0xc0, 0x4f, 0xbb, 0xde, 0x8f
|
2916
|
+
DEFINE_GUIDSTRUCT("E757BCA0-39AC-11d1-A9F5-00C04FBBDE8F", KSDATAFORMAT_TYPE_NABTS);
|
2917
|
+
# define KSDATAFORMAT_TYPE_NABTS DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_NABTS)
|
2918
|
+
|
2919
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_NABTS_FEC \
|
2920
|
+
0xe757bca1, 0x39ac, 0x11d1, 0xa9, 0xf5, 0x0, 0xc0, 0x4f, 0xbb, 0xde, 0x8f
|
2921
|
+
DEFINE_GUIDSTRUCT("E757BCA1-39AC-11d1-A9F5-00C04FBBDE8F", KSDATAFORMAT_SUBTYPE_NABTS_FEC);
|
2922
|
+
# define KSDATAFORMAT_SUBTYPE_NABTS_FEC DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_NABTS_FEC)
|
2923
|
+
|
2924
|
+
# define MAX_NABTS_VBI_LINES_PER_FIELD 11
|
2925
|
+
# define NABTS_LINES_PER_BUNDLE 16
|
2926
|
+
# define NABTS_PAYLOAD_PER_LINE 28
|
2927
|
+
# define NABTS_BYTES_PER_LINE 36
|
2928
|
+
|
2929
|
+
typedef struct _NABTSFEC_BUFFER
|
2930
|
+
{
|
2931
|
+
ULONG dataSize;
|
2932
|
+
USHORT groupID;
|
2933
|
+
USHORT Reserved;
|
2934
|
+
UCHAR data[NABTS_LINES_PER_BUNDLE * NABTS_PAYLOAD_PER_LINE];
|
2935
|
+
}NABTSFEC_BUFFER, * PNABTSFEC_BUFFER;
|
2936
|
+
|
2937
|
+
# define STATIC_KSPROPSETID_VBICodecFiltering \
|
2938
|
+
0xcafeb0caL, 0x8715, 0x11d0, 0xbd, 0x6a, 0x00, 0x35, 0xc0, 0xed, 0xba, 0xbe
|
2939
|
+
DEFINE_GUIDSTRUCT("cafeb0ca-8715-11d0-bd6a-0035c0edbabe", KSPROPSETID_VBICodecFiltering);
|
2940
|
+
# define KSPROPSETID_VBICodecFiltering DEFINE_GUIDNAMED(KSPROPSETID_VBICodecFiltering)
|
2941
|
+
|
2942
|
+
typedef enum
|
2943
|
+
{
|
2944
|
+
KSPROPERTY_VBICODECFILTERING_SCANLINES_REQUESTED_BIT_ARRAY = 0x01,
|
2945
|
+
KSPROPERTY_VBICODECFILTERING_SCANLINES_DISCOVERED_BIT_ARRAY,
|
2946
|
+
KSPROPERTY_VBICODECFILTERING_SUBSTREAMS_REQUESTED_BIT_ARRAY,
|
2947
|
+
KSPROPERTY_VBICODECFILTERING_SUBSTREAMS_DISCOVERED_BIT_ARRAY,
|
2948
|
+
KSPROPERTY_VBICODECFILTERING_STATISTICS
|
2949
|
+
}KSPROPERTY_VBICODECFILTERING;
|
2950
|
+
|
2951
|
+
typedef struct _VBICODECFILTERING_SCANLINES
|
2952
|
+
{
|
2953
|
+
DWORD DwordBitArray[32];
|
2954
|
+
}VBICODECFILTERING_SCANLINES, * PVBICODECFILTERING_SCANLINES;
|
2955
|
+
|
2956
|
+
typedef struct _VBICODECFILTERING_NABTS_SUBSTREAMS
|
2957
|
+
{
|
2958
|
+
DWORD SubstreamMask[128];
|
2959
|
+
}VBICODECFILTERING_NABTS_SUBSTREAMS, * PVBICODECFILTERING_NABTS_SUBSTREAMS;
|
2960
|
+
|
2961
|
+
typedef struct _VBICODECFILTERING_CC_SUBSTREAMS
|
2962
|
+
{
|
2963
|
+
DWORD SubstreamMask;
|
2964
|
+
}VBICODECFILTERING_CC_SUBSTREAMS, * PVBICODECFILTERING_CC_SUBSTREAMS;
|
2965
|
+
|
2966
|
+
# define KS_CC_SUBSTREAM_ODD 0x0001L
|
2967
|
+
# define KS_CC_SUBSTREAM_EVEN 0x0002L
|
2968
|
+
|
2969
|
+
# define KS_CC_SUBSTREAM_FIELD1_MASK 0x00F0L
|
2970
|
+
# define KS_CC_SUBSTREAM_SERVICE_CC1 0x0010L
|
2971
|
+
# define KS_CC_SUBSTREAM_SERVICE_CC2 0x0020L
|
2972
|
+
# define KS_CC_SUBSTREAM_SERVICE_T1 0x0040L
|
2973
|
+
# define KS_CC_SUBSTREAM_SERVICE_T2 0x0080L
|
2974
|
+
|
2975
|
+
# define KS_CC_SUBSTREAM_FIELD2_MASK 0x1F00L
|
2976
|
+
# define KS_CC_SUBSTREAM_SERVICE_CC3 0x0100L
|
2977
|
+
# define KS_CC_SUBSTREAM_SERVICE_CC4 0x0200L
|
2978
|
+
# define KS_CC_SUBSTREAM_SERVICE_T3 0x0400L
|
2979
|
+
# define KS_CC_SUBSTREAM_SERVICE_T4 0x0800L
|
2980
|
+
# define KS_CC_SUBSTREAM_SERVICE_XDS 0x1000L
|
2981
|
+
|
2982
|
+
# define CC_MAX_HW_DECODE_LINES 12
|
2983
|
+
typedef struct _CC_BYTE_PAIR
|
2984
|
+
{
|
2985
|
+
BYTE Decoded[2];
|
2986
|
+
USHORT Reserved;
|
2987
|
+
}CC_BYTE_PAIR, * PCC_BYTE_PAIR;
|
2988
|
+
|
2989
|
+
typedef struct _CC_HW_FIELD
|
2990
|
+
{
|
2991
|
+
VBICODECFILTERING_SCANLINES ScanlinesRequested;
|
2992
|
+
ULONG fieldFlags;
|
2993
|
+
LONGLONG PictureNumber;
|
2994
|
+
CC_BYTE_PAIR Lines[CC_MAX_HW_DECODE_LINES];
|
2995
|
+
}CC_HW_FIELD, * PCC_HW_FIELD;
|
2996
|
+
|
2997
|
+
# ifndef PACK_PRAGMAS_NOT_SUPPORTED
|
2998
|
+
# include <pshpack1.h>
|
2999
|
+
# endif
|
3000
|
+
typedef struct _NABTS_BUFFER_LINE
|
3001
|
+
{
|
3002
|
+
BYTE Confidence;
|
3003
|
+
BYTE Bytes[NABTS_BYTES_PER_LINE];
|
3004
|
+
}NABTS_BUFFER_LINE, * PNABTS_BUFFER_LINE;
|
3005
|
+
|
3006
|
+
# define NABTS_BUFFER_PICTURENUMBER_SUPPORT 1
|
3007
|
+
typedef struct _NABTS_BUFFER
|
3008
|
+
{
|
3009
|
+
VBICODECFILTERING_SCANLINES ScanlinesRequested;
|
3010
|
+
LONGLONG PictureNumber;
|
3011
|
+
NABTS_BUFFER_LINE NabtsLines[MAX_NABTS_VBI_LINES_PER_FIELD];
|
3012
|
+
}NABTS_BUFFER, * PNABTS_BUFFER;
|
3013
|
+
# ifndef PACK_PRAGMAS_NOT_SUPPORTED
|
3014
|
+
# include <poppack.h>
|
3015
|
+
# endif
|
3016
|
+
|
3017
|
+
# define WST_TVTUNER_CHANGE_BEGIN_TUNE 0x1000L
|
3018
|
+
# define WST_TVTUNER_CHANGE_END_TUNE 0x2000L
|
3019
|
+
|
3020
|
+
# define MAX_WST_VBI_LINES_PER_FIELD 17
|
3021
|
+
# define WST_BYTES_PER_LINE 42
|
3022
|
+
|
3023
|
+
typedef struct _WST_BUFFER_LINE
|
3024
|
+
{
|
3025
|
+
BYTE Confidence;
|
3026
|
+
BYTE Bytes[WST_BYTES_PER_LINE];
|
3027
|
+
}WST_BUFFER_LINE, * PWST_BUFFER_LINE;
|
3028
|
+
|
3029
|
+
typedef struct _WST_BUFFER
|
3030
|
+
{
|
3031
|
+
VBICODECFILTERING_SCANLINES ScanlinesRequested;
|
3032
|
+
WST_BUFFER_LINE WstLines[MAX_WST_VBI_LINES_PER_FIELD];
|
3033
|
+
}WST_BUFFER, * PWST_BUFFER;
|
3034
|
+
|
3035
|
+
typedef struct _VBICODECFILTERING_STATISTICS_COMMON
|
3036
|
+
{
|
3037
|
+
DWORD InputSRBsProcessed;
|
3038
|
+
DWORD OutputSRBsProcessed;
|
3039
|
+
DWORD SRBsIgnored;
|
3040
|
+
DWORD InputSRBsMissing;
|
3041
|
+
DWORD OutputSRBsMissing;
|
3042
|
+
DWORD OutputFailures;
|
3043
|
+
DWORD InternalErrors;
|
3044
|
+
DWORD ExternalErrors;
|
3045
|
+
DWORD InputDiscontinuities;
|
3046
|
+
DWORD DSPFailures;
|
3047
|
+
DWORD TvTunerChanges;
|
3048
|
+
DWORD VBIHeaderChanges;
|
3049
|
+
DWORD LineConfidenceAvg;
|
3050
|
+
DWORD BytesOutput;
|
3051
|
+
}VBICODECFILTERING_STATISTICS_COMMON, * PVBICODECFILTERING_STATISTICS_COMMON;
|
3052
|
+
|
3053
|
+
typedef struct _VBICODECFILTERING_STATISTICS_COMMON_PIN
|
3054
|
+
{
|
3055
|
+
DWORD SRBsProcessed;
|
3056
|
+
DWORD SRBsIgnored;
|
3057
|
+
DWORD SRBsMissing;
|
3058
|
+
DWORD InternalErrors;
|
3059
|
+
DWORD ExternalErrors;
|
3060
|
+
DWORD Discontinuities;
|
3061
|
+
DWORD LineConfidenceAvg;
|
3062
|
+
DWORD BytesOutput;
|
3063
|
+
}VBICODECFILTERING_STATISTICS_COMMON_PIN, * PVBICODECFILTERING_STATISTICS_COMMON_PIN;
|
3064
|
+
|
3065
|
+
typedef struct _VBICODECFILTERING_STATISTICS_NABTS
|
3066
|
+
{
|
3067
|
+
VBICODECFILTERING_STATISTICS_COMMON Common;
|
3068
|
+
DWORD FECBundleBadLines;
|
3069
|
+
DWORD FECQueueOverflows;
|
3070
|
+
DWORD FECCorrectedLines;
|
3071
|
+
DWORD FECUncorrectableLines;
|
3072
|
+
DWORD BundlesProcessed;
|
3073
|
+
DWORD BundlesSent2IP;
|
3074
|
+
DWORD FilteredLines;
|
3075
|
+
}VBICODECFILTERING_STATISTICS_NABTS, * PVBICODECFILTERING_STATISTICS_NABTS;
|
3076
|
+
|
3077
|
+
typedef struct _VBICODECFILTERING_STATISTICS_NABTS_PIN
|
3078
|
+
{
|
3079
|
+
VBICODECFILTERING_STATISTICS_COMMON_PIN Common;
|
3080
|
+
}VBICODECFILTERING_STATISTICS_NABTS_PIN, * PVBICODECFILTERING_STATISTICS_NABTS_PIN;
|
3081
|
+
|
3082
|
+
typedef struct _VBICODECFILTERING_STATISTICS_CC
|
3083
|
+
{
|
3084
|
+
VBICODECFILTERING_STATISTICS_COMMON Common;
|
3085
|
+
}VBICODECFILTERING_STATISTICS_CC, * PVBICODECFILTERING_STATISTICS_CC;
|
3086
|
+
|
3087
|
+
typedef struct _VBICODECFILTERING_STATISTICS_CC_PIN
|
3088
|
+
{
|
3089
|
+
VBICODECFILTERING_STATISTICS_COMMON_PIN Common;
|
3090
|
+
}VBICODECFILTERING_STATISTICS_CC_PIN, * PVBICODECFILTERING_STATISTICS_CC_PIN;
|
3091
|
+
|
3092
|
+
typedef struct _VBICODECFILTERING_STATISTICS_TELETEXT
|
3093
|
+
{
|
3094
|
+
VBICODECFILTERING_STATISTICS_COMMON Common;
|
3095
|
+
}VBICODECFILTERING_STATISTICS_TELETEXT, * PVBICODECFILTERING_STATISTICS_TELETEXT;
|
3096
|
+
|
3097
|
+
typedef struct _VBICODECFILTERING_STATISTICS_TELETEXT_PIN
|
3098
|
+
{
|
3099
|
+
VBICODECFILTERING_STATISTICS_COMMON_PIN Common;
|
3100
|
+
}VBICODECFILTERING_STATISTICS_TELETEXT_PIN, * PVBICODECFILTERING_STATISTICS_TELETEXT_PIN;
|
3101
|
+
|
3102
|
+
typedef struct
|
3103
|
+
{
|
3104
|
+
KSPROPERTY Property;
|
3105
|
+
VBICODECFILTERING_SCANLINES Scanlines;
|
3106
|
+
}KSPROPERTY_VBICODECFILTERING_SCANLINES_S, * PKSPROPERTY_VBICODECFILTERING_SCANLINES_S;
|
3107
|
+
|
3108
|
+
typedef struct
|
3109
|
+
{
|
3110
|
+
KSPROPERTY Property;
|
3111
|
+
VBICODECFILTERING_NABTS_SUBSTREAMS Substreams;
|
3112
|
+
}KSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S, * PKSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S;
|
3113
|
+
|
3114
|
+
typedef struct
|
3115
|
+
{
|
3116
|
+
KSPROPERTY Property;
|
3117
|
+
VBICODECFILTERING_CC_SUBSTREAMS Substreams;
|
3118
|
+
}KSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S, * PKSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S;
|
3119
|
+
|
3120
|
+
typedef struct
|
3121
|
+
{
|
3122
|
+
KSPROPERTY Property;
|
3123
|
+
VBICODECFILTERING_STATISTICS_COMMON Statistics;
|
3124
|
+
}KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S, * PKSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S;
|
3125
|
+
|
3126
|
+
typedef struct
|
3127
|
+
{
|
3128
|
+
KSPROPERTY Property;
|
3129
|
+
VBICODECFILTERING_STATISTICS_COMMON_PIN Statistics;
|
3130
|
+
}KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S, * PKSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S;
|
3131
|
+
|
3132
|
+
typedef struct
|
3133
|
+
{
|
3134
|
+
KSPROPERTY Property;
|
3135
|
+
VBICODECFILTERING_STATISTICS_NABTS Statistics;
|
3136
|
+
}KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S, * PKSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S;
|
3137
|
+
|
3138
|
+
typedef struct
|
3139
|
+
{
|
3140
|
+
KSPROPERTY Property;
|
3141
|
+
VBICODECFILTERING_STATISTICS_NABTS_PIN Statistics;
|
3142
|
+
}KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S, * PKSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S;
|
3143
|
+
|
3144
|
+
typedef struct
|
3145
|
+
{
|
3146
|
+
KSPROPERTY Property;
|
3147
|
+
VBICODECFILTERING_STATISTICS_CC Statistics;
|
3148
|
+
}KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S, * PKSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S;
|
3149
|
+
|
3150
|
+
typedef struct
|
3151
|
+
{
|
3152
|
+
KSPROPERTY Property;
|
3153
|
+
VBICODECFILTERING_STATISTICS_CC_PIN Statistics;
|
3154
|
+
}KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S, * PKSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S;
|
3155
|
+
|
3156
|
+
# define STATIC_PINNAME_VIDEO_CAPTURE \
|
3157
|
+
0xfb6c4281, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3158
|
+
# define STATIC_PINNAME_CAPTURE STATIC_PINNAME_VIDEO_CAPTURE
|
3159
|
+
DEFINE_GUIDSTRUCT("FB6C4281-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_CAPTURE);
|
3160
|
+
# define PINNAME_VIDEO_CAPTURE DEFINE_GUIDNAMED(PINNAME_VIDEO_CAPTURE)
|
3161
|
+
# define PINNAME_CAPTURE PINNAME_VIDEO_CAPTURE
|
3162
|
+
|
3163
|
+
# define STATIC_PINNAME_VIDEO_CC_CAPTURE \
|
3164
|
+
0x1aad8061, 0x12d, 0x11d2, 0xb4, 0xb1, 0x0, 0xa0, 0xd1, 0x2, 0xcf, 0xbe
|
3165
|
+
# define STATIC_PINNAME_CC_CAPTURE STATIC_PINNAME_VIDEO_CC_CAPTURE
|
3166
|
+
DEFINE_GUIDSTRUCT("1AAD8061-012D-11d2-B4B1-00A0D102CFBE", PINNAME_VIDEO_CC_CAPTURE);
|
3167
|
+
# define PINNAME_VIDEO_CC_CAPTURE DEFINE_GUIDNAMED(PINNAME_VIDEO_CC_CAPTURE)
|
3168
|
+
|
3169
|
+
# define STATIC_PINNAME_VIDEO_NABTS_CAPTURE \
|
3170
|
+
0x29703660, 0x498a, 0x11d2, 0xb4, 0xb1, 0x0, 0xa0, 0xd1, 0x2, 0xcf, 0xbe
|
3171
|
+
# define STATIC_PINNAME_NABTS_CAPTURE STATIC_PINNAME_VIDEO_NABTS_CAPTURE
|
3172
|
+
DEFINE_GUIDSTRUCT("29703660-498A-11d2-B4B1-00A0D102CFBE", PINNAME_VIDEO_NABTS_CAPTURE);
|
3173
|
+
# define PINNAME_VIDEO_NABTS_CAPTURE DEFINE_GUIDNAMED(PINNAME_VIDEO_NABTS_CAPTURE)
|
3174
|
+
|
3175
|
+
# define STATIC_PINNAME_VIDEO_PREVIEW \
|
3176
|
+
0xfb6c4282, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3177
|
+
# define STATIC_PINNAME_PREVIEW STATIC_PINNAME_VIDEO_PREVIEW
|
3178
|
+
DEFINE_GUIDSTRUCT("FB6C4282-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_PREVIEW);
|
3179
|
+
# define PINNAME_VIDEO_PREVIEW DEFINE_GUIDNAMED(PINNAME_VIDEO_PREVIEW)
|
3180
|
+
# define PINNAME_PREVIEW PINNAME_VIDEO_PREVIEW
|
3181
|
+
|
3182
|
+
# define STATIC_PINNAME_VIDEO_ANALOGVIDEOIN \
|
3183
|
+
0xfb6c4283, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3184
|
+
DEFINE_GUIDSTRUCT("FB6C4283-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_ANALOGVIDEOIN);
|
3185
|
+
# define PINNAME_VIDEO_ANALOGVIDEOIN DEFINE_GUIDNAMED(PINNAME_VIDEO_ANALOGVIDEOIN)
|
3186
|
+
|
3187
|
+
# define STATIC_PINNAME_VIDEO_VBI \
|
3188
|
+
0xfb6c4284, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3189
|
+
DEFINE_GUIDSTRUCT("FB6C4284-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_VBI);
|
3190
|
+
# define PINNAME_VIDEO_VBI DEFINE_GUIDNAMED(PINNAME_VIDEO_VBI)
|
3191
|
+
|
3192
|
+
# define STATIC_PINNAME_VIDEO_VIDEOPORT \
|
3193
|
+
0xfb6c4285, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3194
|
+
DEFINE_GUIDSTRUCT("FB6C4285-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_VIDEOPORT);
|
3195
|
+
# define PINNAME_VIDEO_VIDEOPORT DEFINE_GUIDNAMED(PINNAME_VIDEO_VIDEOPORT)
|
3196
|
+
|
3197
|
+
# define STATIC_PINNAME_VIDEO_NABTS \
|
3198
|
+
0xfb6c4286, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3199
|
+
DEFINE_GUIDSTRUCT("FB6C4286-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_NABTS);
|
3200
|
+
# define PINNAME_VIDEO_NABTS DEFINE_GUIDNAMED(PINNAME_VIDEO_NABTS)
|
3201
|
+
|
3202
|
+
# define STATIC_PINNAME_VIDEO_EDS \
|
3203
|
+
0xfb6c4287, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3204
|
+
DEFINE_GUIDSTRUCT("FB6C4287-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_EDS);
|
3205
|
+
# define PINNAME_VIDEO_EDS DEFINE_GUIDNAMED(PINNAME_VIDEO_EDS)
|
3206
|
+
|
3207
|
+
# define STATIC_PINNAME_VIDEO_TELETEXT \
|
3208
|
+
0xfb6c4288, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3209
|
+
DEFINE_GUIDSTRUCT("FB6C4288-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_TELETEXT);
|
3210
|
+
# define PINNAME_VIDEO_TELETEXT DEFINE_GUIDNAMED(PINNAME_VIDEO_TELETEXT)
|
3211
|
+
|
3212
|
+
# define STATIC_PINNAME_VIDEO_CC \
|
3213
|
+
0xfb6c4289, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3214
|
+
DEFINE_GUIDSTRUCT("FB6C4289-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_CC);
|
3215
|
+
# define PINNAME_VIDEO_CC DEFINE_GUIDNAMED(PINNAME_VIDEO_CC)
|
3216
|
+
|
3217
|
+
# define STATIC_PINNAME_VIDEO_STILL \
|
3218
|
+
0xfb6c428A, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3219
|
+
DEFINE_GUIDSTRUCT("FB6C428A-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_STILL);
|
3220
|
+
# define PINNAME_VIDEO_STILL DEFINE_GUIDNAMED(PINNAME_VIDEO_STILL)
|
3221
|
+
|
3222
|
+
# define STATIC_PINNAME_VIDEO_TIMECODE \
|
3223
|
+
0xfb6c428B, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3224
|
+
DEFINE_GUIDSTRUCT("FB6C428B-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_TIMECODE);
|
3225
|
+
# define PINNAME_VIDEO_TIMECODE DEFINE_GUIDNAMED(PINNAME_VIDEO_TIMECODE)
|
3226
|
+
|
3227
|
+
# define STATIC_PINNAME_VIDEO_VIDEOPORT_VBI \
|
3228
|
+
0xfb6c428C, 0x353, 0x11d1, 0x90, 0x5f, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3229
|
+
DEFINE_GUIDSTRUCT("FB6C428C-0353-11d1-905F-0000C0CC16BA", PINNAME_VIDEO_VIDEOPORT_VBI);
|
3230
|
+
# define PINNAME_VIDEO_VIDEOPORT_VBI DEFINE_GUIDNAMED(PINNAME_VIDEO_VIDEOPORT_VBI)
|
3231
|
+
|
3232
|
+
# define KS_VIDEO_FLAG_FRAME 0x0000L
|
3233
|
+
# define KS_VIDEO_FLAG_FIELD1 0x0001L
|
3234
|
+
# define KS_VIDEO_FLAG_FIELD2 0x0002L
|
3235
|
+
|
3236
|
+
# define KS_VIDEO_FLAG_I_FRAME 0x0000L
|
3237
|
+
# define KS_VIDEO_FLAG_P_FRAME 0x0010L
|
3238
|
+
# define KS_VIDEO_FLAG_B_FRAME 0x0020L
|
3239
|
+
|
3240
|
+
typedef struct tagKS_FRAME_INFO
|
3241
|
+
{
|
3242
|
+
ULONG ExtendedHeaderSize;
|
3243
|
+
DWORD dwFrameFlags;
|
3244
|
+
LONGLONG PictureNumber;
|
3245
|
+
LONGLONG DropCount;
|
3246
|
+
HANDLE hDirectDraw;
|
3247
|
+
HANDLE hSurfaceHandle;
|
3248
|
+
RECT DirectDrawRect;
|
3249
|
+
|
3250
|
+
DWORD Reserved1;
|
3251
|
+
DWORD Reserved2;
|
3252
|
+
DWORD Reserved3;
|
3253
|
+
DWORD Reserved4;
|
3254
|
+
}KS_FRAME_INFO, * PKS_FRAME_INFO;
|
3255
|
+
|
3256
|
+
# define KS_VBI_FLAG_FIELD1 0x0001L
|
3257
|
+
# define KS_VBI_FLAG_FIELD2 0x0002L
|
3258
|
+
|
3259
|
+
# define KS_VBI_FLAG_MV_PRESENT 0x0100L
|
3260
|
+
# define KS_VBI_FLAG_MV_HARDWARE 0x0200L
|
3261
|
+
# define KS_VBI_FLAG_MV_DETECTED 0x0400L
|
3262
|
+
|
3263
|
+
# define KS_VBI_FLAG_TVTUNER_CHANGE 0x0010L
|
3264
|
+
# define KS_VBI_FLAG_VBIINFOHEADER_CHANGE 0x0020L
|
3265
|
+
|
3266
|
+
typedef struct tagKS_VBI_FRAME_INFO
|
3267
|
+
{
|
3268
|
+
ULONG ExtendedHeaderSize;
|
3269
|
+
DWORD dwFrameFlags;
|
3270
|
+
LONGLONG PictureNumber;
|
3271
|
+
LONGLONG DropCount;
|
3272
|
+
DWORD dwSamplingFrequency;
|
3273
|
+
KS_TVTUNER_CHANGE_INFO TvTunerChangeInfo;
|
3274
|
+
KS_VBIINFOHEADER VBIInfoHeader;
|
3275
|
+
}KS_VBI_FRAME_INFO, * PKS_VBI_FRAME_INFO;
|
3276
|
+
|
3277
|
+
typedef enum
|
3278
|
+
{
|
3279
|
+
KS_AnalogVideo_None = 0x00000000,
|
3280
|
+
KS_AnalogVideo_NTSC_M = 0x00000001,
|
3281
|
+
KS_AnalogVideo_NTSC_M_J = 0x00000002,
|
3282
|
+
KS_AnalogVideo_NTSC_433 = 0x00000004,
|
3283
|
+
KS_AnalogVideo_PAL_B = 0x00000010,
|
3284
|
+
KS_AnalogVideo_PAL_D = 0x00000020,
|
3285
|
+
KS_AnalogVideo_PAL_G = 0x00000040,
|
3286
|
+
KS_AnalogVideo_PAL_H = 0x00000080,
|
3287
|
+
KS_AnalogVideo_PAL_I = 0x00000100,
|
3288
|
+
KS_AnalogVideo_PAL_M = 0x00000200,
|
3289
|
+
KS_AnalogVideo_PAL_N = 0x00000400,
|
3290
|
+
KS_AnalogVideo_PAL_60 = 0x00000800,
|
3291
|
+
KS_AnalogVideo_SECAM_B = 0x00001000,
|
3292
|
+
KS_AnalogVideo_SECAM_D = 0x00002000,
|
3293
|
+
KS_AnalogVideo_SECAM_G = 0x00004000,
|
3294
|
+
KS_AnalogVideo_SECAM_H = 0x00008000,
|
3295
|
+
KS_AnalogVideo_SECAM_K = 0x00010000,
|
3296
|
+
KS_AnalogVideo_SECAM_K1 = 0x00020000,
|
3297
|
+
KS_AnalogVideo_SECAM_L = 0x00040000,
|
3298
|
+
KS_AnalogVideo_SECAM_L1 = 0x00080000,
|
3299
|
+
KS_AnalogVideo_PAL_N_COMBO = 0x00100000
|
3300
|
+
}KS_AnalogVideoStandard;
|
3301
|
+
|
3302
|
+
# define KS_AnalogVideo_NTSC_Mask 0x00000007
|
3303
|
+
# define KS_AnalogVideo_PAL_Mask 0x00100FF0
|
3304
|
+
# define KS_AnalogVideo_SECAM_Mask 0x000FF000
|
3305
|
+
|
3306
|
+
# define STATIC_PROPSETID_ALLOCATOR_CONTROL \
|
3307
|
+
0x53171960, 0x148e, 0x11d2, 0x99, 0x79, 0x0, 0x0, 0xc0, 0xcc, 0x16, 0xba
|
3308
|
+
DEFINE_GUIDSTRUCT("53171960-148E-11d2-9979-0000C0CC16BA", PROPSETID_ALLOCATOR_CONTROL);
|
3309
|
+
# define PROPSETID_ALLOCATOR_CONTROL DEFINE_GUIDNAMED(PROPSETID_ALLOCATOR_CONTROL)
|
3310
|
+
|
3311
|
+
typedef enum
|
3312
|
+
{
|
3313
|
+
KSPROPERTY_ALLOCATOR_CONTROL_HONOR_COUNT,
|
3314
|
+
KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE,
|
3315
|
+
KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS,
|
3316
|
+
KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE
|
3317
|
+
}KSPROPERTY_ALLOCATOR_CONTROL;
|
3318
|
+
|
3319
|
+
typedef struct
|
3320
|
+
{
|
3321
|
+
ULONG CX;
|
3322
|
+
ULONG CY;
|
3323
|
+
}KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S, * PKSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S;
|
3324
|
+
|
3325
|
+
typedef struct
|
3326
|
+
{
|
3327
|
+
ULONG InterleavedCapSupported;
|
3328
|
+
}KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S, * PKSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S;
|
3329
|
+
|
3330
|
+
typedef struct
|
3331
|
+
{
|
3332
|
+
ULONG InterleavedCapPossible;
|
3333
|
+
}KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S, * PKSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S;
|
3334
|
+
|
3335
|
+
# define STATIC_PROPSETID_VIDCAP_VIDEOPROCAMP \
|
3336
|
+
0xC6E13360L, 0x30AC, 0x11d0, 0xa1, 0x8c, 0x00, 0xA0, 0xC9, 0x11, 0x89, 0x56
|
3337
|
+
DEFINE_GUIDSTRUCT("C6E13360-30AC-11d0-A18C-00A0C9118956", PROPSETID_VIDCAP_VIDEOPROCAMP);
|
3338
|
+
# define PROPSETID_VIDCAP_VIDEOPROCAMP DEFINE_GUIDNAMED(PROPSETID_VIDCAP_VIDEOPROCAMP)
|
3339
|
+
|
3340
|
+
typedef enum
|
3341
|
+
{
|
3342
|
+
KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS,
|
3343
|
+
KSPROPERTY_VIDEOPROCAMP_CONTRAST,
|
3344
|
+
KSPROPERTY_VIDEOPROCAMP_HUE,
|
3345
|
+
KSPROPERTY_VIDEOPROCAMP_SATURATION,
|
3346
|
+
KSPROPERTY_VIDEOPROCAMP_SHARPNESS,
|
3347
|
+
KSPROPERTY_VIDEOPROCAMP_GAMMA,
|
3348
|
+
KSPROPERTY_VIDEOPROCAMP_COLORENABLE,
|
3349
|
+
KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE,
|
3350
|
+
KSPROPERTY_VIDEOPROCAMP_BACKLIGHT_COMPENSATION,
|
3351
|
+
KSPROPERTY_VIDEOPROCAMP_GAIN,
|
3352
|
+
KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER,
|
3353
|
+
KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER_LIMIT,
|
3354
|
+
KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE_COMPONENT,
|
3355
|
+
KSPROPERTY_VIDEOPROCAMP_POWERLINE_FREQUENCY
|
3356
|
+
}KSPROPERTY_VIDCAP_VIDEOPROCAMP;
|
3357
|
+
|
3358
|
+
typedef struct
|
3359
|
+
{
|
3360
|
+
KSPROPERTY Property;
|
3361
|
+
LONG Value;
|
3362
|
+
ULONG Flags;
|
3363
|
+
ULONG Capabilities;
|
3364
|
+
}KSPROPERTY_VIDEOPROCAMP_S, * PKSPROPERTY_VIDEOPROCAMP_S;
|
3365
|
+
|
3366
|
+
typedef struct
|
3367
|
+
{
|
3368
|
+
KSP_NODE NodeProperty;
|
3369
|
+
LONG Value;
|
3370
|
+
ULONG Flags;
|
3371
|
+
ULONG Capabilities;
|
3372
|
+
}KSPROPERTY_VIDEOPROCAMP_NODE_S, * PKSPROPERTY_VIDEOPROCAMP_NODE_S;
|
3373
|
+
|
3374
|
+
typedef struct
|
3375
|
+
{
|
3376
|
+
KSPROPERTY Property;
|
3377
|
+
LONG Value1;
|
3378
|
+
ULONG Flags;
|
3379
|
+
ULONG Capabilities;
|
3380
|
+
LONG Value2;
|
3381
|
+
}KSPROPERTY_VIDEOPROCAMP_S2, * PKSPROPERTY_VIDEOPROCAMP_S2;
|
3382
|
+
|
3383
|
+
typedef struct
|
3384
|
+
{
|
3385
|
+
KSP_NODE NodeProperty;
|
3386
|
+
LONG Value1;
|
3387
|
+
ULONG Flags;
|
3388
|
+
ULONG Capabilities;
|
3389
|
+
LONG Value2;
|
3390
|
+
}KSPROPERTY_VIDEOPROCAMP_NODE_S2, * PKSPROPERTY_VIDEOPROCAMP_NODE_S2;
|
3391
|
+
|
3392
|
+
# define KSPROPERTY_VIDEOPROCAMP_FLAGS_AUTO 0X0001L
|
3393
|
+
# define KSPROPERTY_VIDEOPROCAMP_FLAGS_MANUAL 0X0002L
|
3394
|
+
|
3395
|
+
# define STATIC_PROPSETID_VIDCAP_SELECTOR \
|
3396
|
+
0x1ABDAECA, 0x68B6, 0x4F83, 0x93, 0x71, 0xB4, 0x13, 0x90, 0x7C, 0x7B, 0x9F
|
3397
|
+
DEFINE_GUIDSTRUCT("1ABDAECA-68B6-4F83-9371-B413907C7B9F", PROPSETID_VIDCAP_SELECTOR);
|
3398
|
+
# define PROPSETID_VIDCAP_SELECTOR DEFINE_GUIDNAMED(PROPSETID_VIDCAP_SELECTOR)
|
3399
|
+
|
3400
|
+
typedef enum
|
3401
|
+
{
|
3402
|
+
KSPROPERTY_SELECTOR_SOURCE_NODE_ID,
|
3403
|
+
KSPROPERTY_SELECTOR_NUM_SOURCES
|
3404
|
+
}KSPROPERTY_VIDCAP_SELECTOR, * PKSPROPERTY_VIDCAP_SELECTOR;
|
3405
|
+
|
3406
|
+
typedef struct
|
3407
|
+
{
|
3408
|
+
KSPROPERTY Property;
|
3409
|
+
LONG Value;
|
3410
|
+
ULONG Flags;
|
3411
|
+
ULONG Capabilities;
|
3412
|
+
}KSPROPERTY_SELECTOR_S, * PKSPROPERTY_SELECTOR_S;
|
3413
|
+
|
3414
|
+
typedef struct
|
3415
|
+
{
|
3416
|
+
KSP_NODE NodeProperty;
|
3417
|
+
LONG Value;
|
3418
|
+
ULONG Flags;
|
3419
|
+
ULONG Capabilities;
|
3420
|
+
}KSPROPERTY_SELECTOR_NODE_S, * PKSPROPERTY_SELECTOR_NODE_S;
|
3421
|
+
|
3422
|
+
# define STATIC_PROPSETID_TUNER \
|
3423
|
+
0x6a2e0605L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
3424
|
+
DEFINE_GUIDSTRUCT("6a2e0605-28e4-11d0-a18c-00a0c9118956", PROPSETID_TUNER);
|
3425
|
+
# define PROPSETID_TUNER DEFINE_GUIDNAMED(PROPSETID_TUNER)
|
3426
|
+
|
3427
|
+
typedef enum
|
3428
|
+
{
|
3429
|
+
KSPROPERTY_TUNER_CAPS,
|
3430
|
+
KSPROPERTY_TUNER_MODE_CAPS,
|
3431
|
+
KSPROPERTY_TUNER_MODE,
|
3432
|
+
KSPROPERTY_TUNER_STANDARD,
|
3433
|
+
KSPROPERTY_TUNER_FREQUENCY,
|
3434
|
+
KSPROPERTY_TUNER_INPUT,
|
3435
|
+
KSPROPERTY_TUNER_STATUS,
|
3436
|
+
KSPROPERTY_TUNER_IF_MEDIUM
|
3437
|
+
}KSPROPERTY_TUNER;
|
3438
|
+
|
3439
|
+
typedef enum
|
3440
|
+
{
|
3441
|
+
KSPROPERTY_TUNER_MODE_TV = 0X0001,
|
3442
|
+
KSPROPERTY_TUNER_MODE_FM_RADIO = 0X0002,
|
3443
|
+
KSPROPERTY_TUNER_MODE_AM_RADIO = 0X0004,
|
3444
|
+
KSPROPERTY_TUNER_MODE_DSS = 0X0008,
|
3445
|
+
KSPROPERTY_TUNER_MODE_ATSC = 0X0010
|
3446
|
+
}KSPROPERTY_TUNER_MODES;
|
3447
|
+
|
3448
|
+
typedef enum
|
3449
|
+
{
|
3450
|
+
KS_TUNER_TUNING_EXACT = 1,
|
3451
|
+
KS_TUNER_TUNING_FINE,
|
3452
|
+
KS_TUNER_TUNING_COARSE
|
3453
|
+
}KS_TUNER_TUNING_FLAGS;
|
3454
|
+
|
3455
|
+
typedef enum
|
3456
|
+
{
|
3457
|
+
KS_TUNER_STRATEGY_PLL = 0X01,
|
3458
|
+
KS_TUNER_STRATEGY_SIGNAL_STRENGTH = 0X02,
|
3459
|
+
KS_TUNER_STRATEGY_DRIVER_TUNES = 0X04
|
3460
|
+
}KS_TUNER_STRATEGY;
|
3461
|
+
|
3462
|
+
typedef struct
|
3463
|
+
{
|
3464
|
+
KSPROPERTY Property;
|
3465
|
+
ULONG ModesSupported;
|
3466
|
+
KSPIN_MEDIUM VideoMedium;
|
3467
|
+
KSPIN_MEDIUM TVAudioMedium;
|
3468
|
+
KSPIN_MEDIUM RadioAudioMedium;
|
3469
|
+
}KSPROPERTY_TUNER_CAPS_S, * PKSPROPERTY_TUNER_CAPS_S;
|
3470
|
+
|
3471
|
+
typedef struct
|
3472
|
+
{
|
3473
|
+
KSPROPERTY Property;
|
3474
|
+
KSPIN_MEDIUM IFMedium;
|
3475
|
+
}KSPROPERTY_TUNER_IF_MEDIUM_S, * PKSPROPERTY_TUNER_IF_MEDIUM_S;
|
3476
|
+
|
3477
|
+
typedef struct
|
3478
|
+
{
|
3479
|
+
KSPROPERTY Property;
|
3480
|
+
ULONG Mode;
|
3481
|
+
ULONG StandardsSupported;
|
3482
|
+
ULONG MinFrequency;
|
3483
|
+
ULONG MaxFrequency;
|
3484
|
+
ULONG TuningGranularity;
|
3485
|
+
ULONG NumberOfInputs;
|
3486
|
+
ULONG SettlingTime;
|
3487
|
+
ULONG Strategy;
|
3488
|
+
}KSPROPERTY_TUNER_MODE_CAPS_S, * PKSPROPERTY_TUNER_MODE_CAPS_S;
|
3489
|
+
|
3490
|
+
typedef struct
|
3491
|
+
{
|
3492
|
+
KSPROPERTY Property;
|
3493
|
+
ULONG Mode;
|
3494
|
+
}KSPROPERTY_TUNER_MODE_S, * PKSPROPERTY_TUNER_MODE_S;
|
3495
|
+
|
3496
|
+
typedef struct
|
3497
|
+
{
|
3498
|
+
KSPROPERTY Property;
|
3499
|
+
ULONG Frequency;
|
3500
|
+
ULONG LastFrequency;
|
3501
|
+
ULONG TuningFlags;
|
3502
|
+
ULONG VideoSubChannel;
|
3503
|
+
ULONG AudioSubChannel;
|
3504
|
+
ULONG Channel;
|
3505
|
+
ULONG Country;
|
3506
|
+
}KSPROPERTY_TUNER_FREQUENCY_S, * PKSPROPERTY_TUNER_FREQUENCY_S;
|
3507
|
+
|
3508
|
+
typedef struct
|
3509
|
+
{
|
3510
|
+
KSPROPERTY Property;
|
3511
|
+
ULONG Standard;
|
3512
|
+
}KSPROPERTY_TUNER_STANDARD_S, * PKSPROPERTY_TUNER_STANDARD_S;
|
3513
|
+
|
3514
|
+
typedef struct
|
3515
|
+
{
|
3516
|
+
KSPROPERTY Property;
|
3517
|
+
ULONG InputIndex;
|
3518
|
+
}KSPROPERTY_TUNER_INPUT_S, * PKSPROPERTY_TUNER_INPUT_S;
|
3519
|
+
|
3520
|
+
typedef struct
|
3521
|
+
{
|
3522
|
+
KSPROPERTY Property;
|
3523
|
+
ULONG CurrentFrequency;
|
3524
|
+
ULONG PLLOffset;
|
3525
|
+
ULONG SignalStrength;
|
3526
|
+
ULONG Busy;
|
3527
|
+
}KSPROPERTY_TUNER_STATUS_S, * PKSPROPERTY_TUNER_STATUS_S;
|
3528
|
+
|
3529
|
+
# define STATIC_EVENTSETID_TUNER \
|
3530
|
+
0x6a2e0606L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
3531
|
+
DEFINE_GUIDSTRUCT("6a2e0606-28e4-11d0-a18c-00a0c9118956", EVENTSETID_TUNER);
|
3532
|
+
# define EVENTSETID_TUNER DEFINE_GUIDNAMED(EVENTSETID_TUNER)
|
3533
|
+
|
3534
|
+
typedef enum
|
3535
|
+
{
|
3536
|
+
KSEVENT_TUNER_CHANGED
|
3537
|
+
}KSEVENT_TUNER;
|
3538
|
+
|
3539
|
+
# define STATIC_KSNODETYPE_VIDEO_STREAMING \
|
3540
|
+
0xDFF229E1L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3541
|
+
DEFINE_GUIDSTRUCT("DFF229E1-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_STREAMING);
|
3542
|
+
# define KSNODETYPE_VIDEO_STREAMING DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_STREAMING)
|
3543
|
+
|
3544
|
+
# define STATIC_KSNODETYPE_VIDEO_INPUT_TERMINAL \
|
3545
|
+
0xDFF229E2L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3546
|
+
DEFINE_GUIDSTRUCT("DFF229E2-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_INPUT_TERMINAL);
|
3547
|
+
# define KSNODETYPE_VIDEO_INPUT_TERMINAL DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_INPUT_TERMINAL)
|
3548
|
+
|
3549
|
+
# define STATIC_KSNODETYPE_VIDEO_OUTPUT_TERMINAL \
|
3550
|
+
0xDFF229E3L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3551
|
+
DEFINE_GUIDSTRUCT("DFF229E3-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_OUTPUT_TERMINAL);
|
3552
|
+
# define KSNODETYPE_VIDEO_OUTPUT_TERMINAL DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_OUTPUT_TERMINAL)
|
3553
|
+
|
3554
|
+
# define STATIC_KSNODETYPE_VIDEO_SELECTOR \
|
3555
|
+
0xDFF229E4L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3556
|
+
DEFINE_GUIDSTRUCT("DFF229E4-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_SELECTOR);
|
3557
|
+
# define KSNODETYPE_VIDEO_SELECTOR DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_SELECTOR)
|
3558
|
+
|
3559
|
+
# define STATIC_KSNODETYPE_VIDEO_PROCESSING \
|
3560
|
+
0xDFF229E5L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3561
|
+
DEFINE_GUIDSTRUCT("DFF229E5-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_PROCESSING);
|
3562
|
+
# define KSNODETYPE_VIDEO_PROCESSING DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_PROCESSING)
|
3563
|
+
|
3564
|
+
# define STATIC_KSNODETYPE_VIDEO_CAMERA_TERMINAL \
|
3565
|
+
0xDFF229E6L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3566
|
+
DEFINE_GUIDSTRUCT("DFF229E6-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_CAMERA_TERMINAL);
|
3567
|
+
# define KSNODETYPE_VIDEO_CAMERA_TERMINAL DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_CAMERA_TERMINAL)
|
3568
|
+
|
3569
|
+
# define STATIC_KSNODETYPE_VIDEO_INPUT_MTT \
|
3570
|
+
0xDFF229E7L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3571
|
+
DEFINE_GUIDSTRUCT("DFF229E7-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_INPUT_MTT);
|
3572
|
+
# define KSNODETYPE_VIDEO_INPUT_MTT DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_INPUT_MTT)
|
3573
|
+
|
3574
|
+
# define STATIC_KSNODETYPE_VIDEO_OUTPUT_MTT \
|
3575
|
+
0xDFF229E8L, 0xF70F, 0x11D0, 0xB9, 0x17, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
3576
|
+
DEFINE_GUIDSTRUCT("DFF229E8-F70F-11D0-B917-00A0C9223196", KSNODETYPE_VIDEO_OUTPUT_MTT);
|
3577
|
+
# define KSNODETYPE_VIDEO_OUTPUT_MTT DEFINE_GUIDNAMED(KSNODETYPE_VIDEO_OUTPUT_MTT)
|
3578
|
+
|
3579
|
+
# define STATIC_PROPSETID_VIDCAP_VIDEOENCODER \
|
3580
|
+
0x6a2e0610L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
3581
|
+
DEFINE_GUIDSTRUCT("6a2e0610-28e4-11d0-a18c-00a0c9118956", PROPSETID_VIDCAP_VIDEOENCODER);
|
3582
|
+
# define PROPSETID_VIDCAP_VIDEOENCODER DEFINE_GUIDNAMED(PROPSETID_VIDCAP_VIDEOENCODER)
|
3583
|
+
|
3584
|
+
typedef enum
|
3585
|
+
{
|
3586
|
+
KSPROPERTY_VIDEOENCODER_CAPS,
|
3587
|
+
KSPROPERTY_VIDEOENCODER_STANDARD,
|
3588
|
+
KSPROPERTY_VIDEOENCODER_COPYPROTECTION,
|
3589
|
+
KSPROPERTY_VIDEOENCODER_CC_ENABLE
|
3590
|
+
}KSPROPERTY_VIDCAP_VIDEOENCODER;
|
3591
|
+
|
3592
|
+
typedef struct
|
3593
|
+
{
|
3594
|
+
KSPROPERTY Property;
|
3595
|
+
LONG Value;
|
3596
|
+
ULONG Flags;
|
3597
|
+
ULONG Capabilities;
|
3598
|
+
}KSPROPERTY_VIDEOENCODER_S, * PKSPROPERTY_VIDEOENCODER_S;
|
3599
|
+
|
3600
|
+
# define STATIC_PROPSETID_VIDCAP_VIDEODECODER \
|
3601
|
+
0xC6E13350L, 0x30AC, 0x11d0, 0xA1, 0x8C, 0x00, 0xA0, 0xC9, 0x11, 0x89, 0x56
|
3602
|
+
DEFINE_GUIDSTRUCT("C6E13350-30AC-11d0-A18C-00A0C9118956", PROPSETID_VIDCAP_VIDEODECODER);
|
3603
|
+
# define PROPSETID_VIDCAP_VIDEODECODER DEFINE_GUIDNAMED(PROPSETID_VIDCAP_VIDEODECODER)
|
3604
|
+
|
3605
|
+
typedef enum
|
3606
|
+
{
|
3607
|
+
KSPROPERTY_VIDEODECODER_CAPS,
|
3608
|
+
KSPROPERTY_VIDEODECODER_STANDARD,
|
3609
|
+
KSPROPERTY_VIDEODECODER_STATUS,
|
3610
|
+
KSPROPERTY_VIDEODECODER_OUTPUT_ENABLE,
|
3611
|
+
KSPROPERTY_VIDEODECODER_VCR_TIMING
|
3612
|
+
}KSPROPERTY_VIDCAP_VIDEODECODER;
|
3613
|
+
|
3614
|
+
typedef enum
|
3615
|
+
{
|
3616
|
+
KS_VIDEODECODER_FLAGS_CAN_DISABLE_OUTPUT = 0X0001,
|
3617
|
+
KS_VIDEODECODER_FLAGS_CAN_USE_VCR_LOCKING = 0X0002,
|
3618
|
+
KS_VIDEODECODER_FLAGS_CAN_INDICATE_LOCKED = 0X0004
|
3619
|
+
}KS_VIDEODECODER_FLAGS;
|
3620
|
+
|
3621
|
+
typedef struct
|
3622
|
+
{
|
3623
|
+
KSPROPERTY Property;
|
3624
|
+
ULONG StandardsSupported;
|
3625
|
+
ULONG Capabilities;
|
3626
|
+
ULONG SettlingTime;
|
3627
|
+
ULONG HSyncPerVSync;
|
3628
|
+
}KSPROPERTY_VIDEODECODER_CAPS_S, * PKSPROPERTY_VIDEODECODER_CAPS_S;
|
3629
|
+
|
3630
|
+
typedef struct
|
3631
|
+
{
|
3632
|
+
KSPROPERTY Property;
|
3633
|
+
ULONG NumberOfLines;
|
3634
|
+
ULONG SignalLocked;
|
3635
|
+
}KSPROPERTY_VIDEODECODER_STATUS_S, * PKSPROPERTY_VIDEODECODER_STATUS_S;
|
3636
|
+
|
3637
|
+
typedef struct
|
3638
|
+
{
|
3639
|
+
KSPROPERTY Property;
|
3640
|
+
ULONG Value;
|
3641
|
+
}KSPROPERTY_VIDEODECODER_S, * PKSPROPERTY_VIDEODECODER_S;
|
3642
|
+
|
3643
|
+
# define STATIC_EVENTSETID_VIDEODECODER \
|
3644
|
+
0x6a2e0621L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
3645
|
+
DEFINE_GUIDSTRUCT("6a2e0621-28e4-11d0-a18c-00a0c9118956", EVENTSETID_VIDEODECODER);
|
3646
|
+
# define EVENTSETID_VIDEODECODER DEFINE_GUIDNAMED(EVENTSETID_VIDEODECODER)
|
3647
|
+
|
3648
|
+
typedef enum
|
3649
|
+
{
|
3650
|
+
KSEVENT_VIDEODECODER_CHANGED
|
3651
|
+
}KSEVENT_VIDEODECODER;
|
3652
|
+
|
3653
|
+
# define STATIC_PROPSETID_VIDCAP_CAMERACONTROL \
|
3654
|
+
0xC6E13370L, 0x30AC, 0x11d0, 0xa1, 0x8C, 0x00, 0xA0, 0xC9, 0x11, 0x89, 0x56
|
3655
|
+
DEFINE_GUIDSTRUCT("C6E13370-30AC-11d0-A18C-00A0C9118956", PROPSETID_VIDCAP_CAMERACONTROL);
|
3656
|
+
# define PROPSETID_VIDCAP_CAMERACONTROL DEFINE_GUIDNAMED(PROPSETID_VIDCAP_CAMERACONTROL)
|
3657
|
+
|
3658
|
+
typedef enum
|
3659
|
+
{
|
3660
|
+
KSPROPERTY_CAMERACONTROL_PAN,
|
3661
|
+
KSPROPERTY_CAMERACONTROL_TILT,
|
3662
|
+
KSPROPERTY_CAMERACONTROL_ROLL,
|
3663
|
+
KSPROPERTY_CAMERACONTROL_ZOOM,
|
3664
|
+
KSPROPERTY_CAMERACONTROL_EXPOSURE,
|
3665
|
+
KSPROPERTY_CAMERACONTROL_IRIS,
|
3666
|
+
KSPROPERTY_CAMERACONTROL_FOCUS,
|
3667
|
+
KSPROPERTY_CAMERACONTROL_SCANMODE,
|
3668
|
+
KSPROPERTY_CAMERACONTROL_PRIVACY,
|
3669
|
+
KSPROPERTY_CAMERACONTROL_PANTILT,
|
3670
|
+
KSPROPERTY_CAMERACONTROL_PAN_RELATIVE,
|
3671
|
+
KSPROPERTY_CAMERACONTROL_TILT_RELATIVE,
|
3672
|
+
KSPROPERTY_CAMERACONTROL_ROLL_RELATIVE,
|
3673
|
+
KSPROPERTY_CAMERACONTROL_ZOOM_RELATIVE,
|
3674
|
+
KSPROPERTY_CAMERACONTROL_EXPOSURE_RELATIVE,
|
3675
|
+
KSPROPERTY_CAMERACONTROL_IRIS_RELATIVE,
|
3676
|
+
KSPROPERTY_CAMERACONTROL_FOCUS_RELATIVE,
|
3677
|
+
KSPROPERTY_CAMERACONTROL_PANTILT_RELATIVE,
|
3678
|
+
KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH
|
3679
|
+
}KSPROPERTY_VIDCAP_CAMERACONTROL;
|
3680
|
+
|
3681
|
+
typedef struct
|
3682
|
+
{
|
3683
|
+
KSPROPERTY Property;
|
3684
|
+
LONG Value;
|
3685
|
+
ULONG Flags;
|
3686
|
+
ULONG Capabilities;
|
3687
|
+
}KSPROPERTY_CAMERACONTROL_S, * PKSPROPERTY_CAMERACONTROL_S;
|
3688
|
+
|
3689
|
+
typedef struct
|
3690
|
+
{
|
3691
|
+
KSP_NODE NodeProperty;
|
3692
|
+
LONG Value;
|
3693
|
+
ULONG Flags;
|
3694
|
+
ULONG Capabilities;
|
3695
|
+
}KSPROPERTY_CAMERACONTROL_NODE_S, PKSPROPERTY_CAMERACONTROL_NODE_S;
|
3696
|
+
|
3697
|
+
typedef struct
|
3698
|
+
{
|
3699
|
+
KSPROPERTY Property;
|
3700
|
+
LONG Value1;
|
3701
|
+
ULONG Flags;
|
3702
|
+
ULONG Capabilities;
|
3703
|
+
LONG Value2;
|
3704
|
+
}KSPROPERTY_CAMERACONTROL_S2, * PKSPROPERTY_CAMERACONTROL_S2;
|
3705
|
+
|
3706
|
+
typedef struct
|
3707
|
+
{
|
3708
|
+
KSP_NODE NodeProperty;
|
3709
|
+
LONG Value1;
|
3710
|
+
ULONG Flags;
|
3711
|
+
ULONG Capabilities;
|
3712
|
+
LONG Value2;
|
3713
|
+
}KSPROPERTY_CAMERACONTROL_NODE_S2, * PKSPROPERTY_CAMERACONTROL_NODE_S2;
|
3714
|
+
|
3715
|
+
typedef struct
|
3716
|
+
{
|
3717
|
+
KSPROPERTY Property;
|
3718
|
+
LONG lOcularFocalLength;
|
3719
|
+
LONG lObjectiveFocalLengthMin;
|
3720
|
+
LONG lObjectiveFocalLengthMax;
|
3721
|
+
}KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S, * PKSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S;
|
3722
|
+
|
3723
|
+
typedef struct
|
3724
|
+
{
|
3725
|
+
KSNODEPROPERTY NodeProperty;
|
3726
|
+
LONG lOcularFocalLength;
|
3727
|
+
LONG lObjectiveFocalLengthMin;
|
3728
|
+
LONG lObjectiveFocalLengthMax;
|
3729
|
+
}KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S, * PKSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S;
|
3730
|
+
|
3731
|
+
# define KSPROPERTY_CAMERACONTROL_FLAGS_AUTO 0X0001L
|
3732
|
+
# define KSPROPERTY_CAMERACONTROL_FLAGS_MANUAL 0X0002L
|
3733
|
+
|
3734
|
+
# define KSPROPERTY_CAMERACONTROL_FLAGS_ABSOLUTE 0X0000L
|
3735
|
+
# define KSPROPERTY_CAMERACONTROL_FLAGS_RELATIVE 0X0010L
|
3736
|
+
|
3737
|
+
# ifndef __EDevCtrl__
|
3738
|
+
# define __EDevCtrl__
|
3739
|
+
|
3740
|
+
# define STATIC_PROPSETID_EXT_DEVICE \
|
3741
|
+
0xB5730A90L, 0x1A2C, 0x11cf, 0x8c, 0x23, 0x00, 0xAA, 0x00, 0x6B, 0x68, 0x14
|
3742
|
+
DEFINE_GUIDSTRUCT("B5730A90-1A2C-11cf-8C23-00AA006B6814", PROPSETID_EXT_DEVICE);
|
3743
|
+
# define PROPSETID_EXT_DEVICE DEFINE_GUIDNAMED(PROPSETID_EXT_DEVICE)
|
3744
|
+
|
3745
|
+
typedef enum
|
3746
|
+
{
|
3747
|
+
KSPROPERTY_EXTDEVICE_ID,
|
3748
|
+
KSPROPERTY_EXTDEVICE_VERSION,
|
3749
|
+
KSPROPERTY_EXTDEVICE_POWER_STATE,
|
3750
|
+
KSPROPERTY_EXTDEVICE_PORT,
|
3751
|
+
KSPROPERTY_EXTDEVICE_CAPABILITIES
|
3752
|
+
}KSPROPERTY_EXTDEVICE;
|
3753
|
+
|
3754
|
+
typedef struct tagDEVCAPS
|
3755
|
+
{
|
3756
|
+
LONG CanRecord;
|
3757
|
+
LONG CanRecordStrobe;
|
3758
|
+
LONG HasAudio;
|
3759
|
+
LONG HasVideo;
|
3760
|
+
LONG UsesFiles;
|
3761
|
+
LONG CanSave;
|
3762
|
+
LONG DeviceType;
|
3763
|
+
LONG TCRead;
|
3764
|
+
LONG TCWrite;
|
3765
|
+
LONG CTLRead;
|
3766
|
+
LONG IndexRead;
|
3767
|
+
LONG Preroll;
|
3768
|
+
LONG Postroll;
|
3769
|
+
LONG SyncAcc;
|
3770
|
+
LONG NormRate;
|
3771
|
+
LONG CanPreview;
|
3772
|
+
LONG CanMonitorSrc;
|
3773
|
+
LONG CanTest;
|
3774
|
+
LONG VideoIn;
|
3775
|
+
LONG AudioIn;
|
3776
|
+
LONG Calibrate;
|
3777
|
+
LONG SeekType;
|
3778
|
+
LONG SimulatedHardware;
|
3779
|
+
}DEVCAPS, * PDEVCAPS;
|
3780
|
+
|
3781
|
+
typedef struct
|
3782
|
+
{
|
3783
|
+
KSPROPERTY Property;
|
3784
|
+
union
|
3785
|
+
{
|
3786
|
+
DEVCAPS Capabilities;
|
3787
|
+
ULONG DevPort;
|
3788
|
+
ULONG PowerState;
|
3789
|
+
WCHAR pawchString[MAX_PATH];
|
3790
|
+
DWORD NodeUniqueID[2];
|
3791
|
+
}u;
|
3792
|
+
}KSPROPERTY_EXTDEVICE_S, * PKSPROPERTY_EXTDEVICE_S;
|
3793
|
+
|
3794
|
+
# define STATIC_PROPSETID_EXT_TRANSPORT \
|
3795
|
+
0xA03CD5F0L, 0x3045, 0x11cf, 0x8c, 0x44, 0x00, 0xAA, 0x00, 0x6B, 0x68, 0x14
|
3796
|
+
DEFINE_GUIDSTRUCT("A03CD5F0-3045-11cf-8C44-00AA006B6814", PROPSETID_EXT_TRANSPORT);
|
3797
|
+
# define PROPSETID_EXT_TRANSPORT DEFINE_GUIDNAMED(PROPSETID_EXT_TRANSPORT)
|
3798
|
+
|
3799
|
+
typedef enum
|
3800
|
+
{
|
3801
|
+
KSPROPERTY_EXTXPORT_CAPABILITIES,
|
3802
|
+
KSPROPERTY_EXTXPORT_INPUT_SIGNAL_MODE,
|
3803
|
+
KSPROPERTY_EXTXPORT_OUTPUT_SIGNAL_MODE,
|
3804
|
+
KSPROPERTY_EXTXPORT_LOAD_MEDIUM,
|
3805
|
+
KSPROPERTY_EXTXPORT_MEDIUM_INFO,
|
3806
|
+
KSPROPERTY_EXTXPORT_STATE,
|
3807
|
+
KSPROPERTY_EXTXPORT_STATE_NOTIFY,
|
3808
|
+
KSPROPERTY_EXTXPORT_TIMECODE_SEARCH,
|
3809
|
+
KSPROPERTY_EXTXPORT_ATN_SEARCH,
|
3810
|
+
KSPROPERTY_EXTXPORT_RTC_SEARCH,
|
3811
|
+
KSPROPERTY_RAW_AVC_CMD
|
3812
|
+
}KSPROPERTY_EXTXPORT;
|
3813
|
+
|
3814
|
+
typedef struct tagTRANSPORTSTATUS
|
3815
|
+
{
|
3816
|
+
LONG Mode;
|
3817
|
+
LONG LastError;
|
3818
|
+
LONG RecordInhibit;
|
3819
|
+
LONG ServoLock;
|
3820
|
+
LONG MediaPresent;
|
3821
|
+
LONG MediaLength;
|
3822
|
+
LONG MediaSize;
|
3823
|
+
LONG MediaTrackCount;
|
3824
|
+
LONG MediaTrackLength;
|
3825
|
+
LONG MediaTrackSide;
|
3826
|
+
LONG MediaType;
|
3827
|
+
LONG LinkMode;
|
3828
|
+
LONG NotifyOn;
|
3829
|
+
}TRANSPORTSTATUS, * PTRANSPORTSTATUS;
|
3830
|
+
|
3831
|
+
typedef struct tagTRANSPORTBASICPARMS
|
3832
|
+
{
|
3833
|
+
LONG TimeFormat;
|
3834
|
+
LONG TimeReference;
|
3835
|
+
LONG Superimpose;
|
3836
|
+
LONG EndStopAction;
|
3837
|
+
LONG RecordFormat;
|
3838
|
+
LONG StepFrames;
|
3839
|
+
LONG SetpField;
|
3840
|
+
LONG Preroll;
|
3841
|
+
LONG RecPreroll;
|
3842
|
+
LONG Postroll;
|
3843
|
+
LONG EditDelay;
|
3844
|
+
LONG PlayTCDelay;
|
3845
|
+
LONG RecTCDelay;
|
3846
|
+
LONG EditField;
|
3847
|
+
LONG FrameServo;
|
3848
|
+
LONG ColorFrameServo;
|
3849
|
+
LONG ServoRef;
|
3850
|
+
LONG WarnGenlock;
|
3851
|
+
LONG SetTracking;
|
3852
|
+
TCHAR VolumeName[40];
|
3853
|
+
LONG Ballistic[20];
|
3854
|
+
LONG Speed;
|
3855
|
+
LONG CounterFormat;
|
3856
|
+
LONG TunerChannel;
|
3857
|
+
LONG TunerNumber;
|
3858
|
+
LONG TimerEvent;
|
3859
|
+
LONG TimerStartDay;
|
3860
|
+
LONG TimerStartTime;
|
3861
|
+
LONG TimerStopDay;
|
3862
|
+
LONG TimerStopTime;
|
3863
|
+
}TRANSPORTBASICPARMS, * PTRANSPORTBASICPARMS;
|
3864
|
+
|
3865
|
+
typedef struct tagTRANSPORTVIDEOPARMS
|
3866
|
+
{
|
3867
|
+
LONG OutputMode;
|
3868
|
+
LONG Input;
|
3869
|
+
}TRANSPORTVIDEOPARMS, * PTRANSPORTVIDEOPARMS;
|
3870
|
+
|
3871
|
+
typedef struct tagTRANSPORTAUDIOPARMS
|
3872
|
+
{
|
3873
|
+
LONG EnableOutput;
|
3874
|
+
LONG EnableRecord;
|
3875
|
+
LONG EnableSelsync;
|
3876
|
+
LONG Input;
|
3877
|
+
LONG MonitorSource;
|
3878
|
+
}TRANSPORTAUDIOPARMS, * PTRANSPORTAUDIOPARMS;
|
3879
|
+
|
3880
|
+
typedef struct
|
3881
|
+
{
|
3882
|
+
WINBOOL MediaPresent;
|
3883
|
+
ULONG MediaType;
|
3884
|
+
WINBOOL RecordInhibit;
|
3885
|
+
}MEDIUM_INFO, * PMEDIUM_INFO;
|
3886
|
+
|
3887
|
+
typedef struct
|
3888
|
+
{
|
3889
|
+
ULONG Mode;
|
3890
|
+
ULONG State;
|
3891
|
+
}TRANSPORT_STATE, * PTRANSPORT_STATE;
|
3892
|
+
|
3893
|
+
typedef struct
|
3894
|
+
{
|
3895
|
+
KSPROPERTY Property;
|
3896
|
+
union
|
3897
|
+
{
|
3898
|
+
ULONG Capabilities;
|
3899
|
+
ULONG SignalMode;
|
3900
|
+
ULONG LoadMedium;
|
3901
|
+
MEDIUM_INFO MediumInfo;
|
3902
|
+
TRANSPORT_STATE XPrtState;
|
3903
|
+
struct
|
3904
|
+
{
|
3905
|
+
BYTE frame;
|
3906
|
+
BYTE second;
|
3907
|
+
BYTE minute;
|
3908
|
+
BYTE hour;
|
3909
|
+
}Timecode;
|
3910
|
+
DWORD dwTimecode;
|
3911
|
+
DWORD dwAbsTrackNumber;
|
3912
|
+
struct
|
3913
|
+
{
|
3914
|
+
ULONG PayloadSize;
|
3915
|
+
BYTE Payload[512];
|
3916
|
+
}RawAVC;
|
3917
|
+
}u;
|
3918
|
+
}KSPROPERTY_EXTXPORT_S, * PKSPROPERTY_EXTXPORT_S;
|
3919
|
+
|
3920
|
+
typedef struct
|
3921
|
+
{
|
3922
|
+
KSP_NODE NodeProperty;
|
3923
|
+
union
|
3924
|
+
{
|
3925
|
+
ULONG Capabilities;
|
3926
|
+
ULONG SignalMode;
|
3927
|
+
ULONG LoadMedium;
|
3928
|
+
MEDIUM_INFO MediumInfo;
|
3929
|
+
TRANSPORT_STATE XPrtState;
|
3930
|
+
struct
|
3931
|
+
{
|
3932
|
+
BYTE frame;
|
3933
|
+
BYTE second;
|
3934
|
+
BYTE minute;
|
3935
|
+
BYTE hour;
|
3936
|
+
}Timecode;
|
3937
|
+
DWORD dwTimecode;
|
3938
|
+
DWORD dwAbsTrackNumber;
|
3939
|
+
struct
|
3940
|
+
{
|
3941
|
+
ULONG PayloadSize;
|
3942
|
+
BYTE Payload[512];
|
3943
|
+
}RawAVC;
|
3944
|
+
}u;
|
3945
|
+
}KSPROPERTY_EXTXPORT_NODE_S, * PKSPROPERTY_EXTXPORT_NODE_S;
|
3946
|
+
|
3947
|
+
# define STATIC_PROPSETID_TIMECODE_READER \
|
3948
|
+
0x9B496CE1L, 0x811B, 0x11cf, 0x8C, 0x77, 0x00, 0xAA, 0x00, 0x6B, 0x68, 0x14
|
3949
|
+
DEFINE_GUIDSTRUCT("9B496CE1-811B-11cf-8C77-00AA006B6814", PROPSETID_TIMECODE_READER);
|
3950
|
+
# define PROPSETID_TIMECODE_READER DEFINE_GUIDNAMED(PROPSETID_TIMECODE_READER)
|
3951
|
+
|
3952
|
+
typedef enum
|
3953
|
+
{
|
3954
|
+
KSPROPERTY_TIMECODE_READER,
|
3955
|
+
KSPROPERTY_ATN_READER,
|
3956
|
+
KSPROPERTY_RTC_READER
|
3957
|
+
}KSPROPERTY_TIMECODE;
|
3958
|
+
|
3959
|
+
# ifndef TIMECODE_DEFINED
|
3960
|
+
# define TIMECODE_DEFINED
|
3961
|
+
typedef union _timecode
|
3962
|
+
{
|
3963
|
+
struct
|
3964
|
+
{
|
3965
|
+
WORD wFrameRate;
|
3966
|
+
WORD wFrameFract;
|
3967
|
+
DWORD dwFrames;
|
3968
|
+
};
|
3969
|
+
DWORDLONG qw;
|
3970
|
+
}TIMECODE;
|
3971
|
+
typedef TIMECODE* PTIMECODE;
|
3972
|
+
|
3973
|
+
typedef struct tagTIMECODE_SAMPLE
|
3974
|
+
{
|
3975
|
+
LONGLONG qwTick;
|
3976
|
+
TIMECODE timecode;
|
3977
|
+
DWORD dwUser;
|
3978
|
+
DWORD dwFlags;
|
3979
|
+
}TIMECODE_SAMPLE;
|
3980
|
+
|
3981
|
+
typedef TIMECODE_SAMPLE* PTIMECODE_SAMPLE;
|
3982
|
+
# endif /* TIMECODE_DEFINED */
|
3983
|
+
|
3984
|
+
typedef struct
|
3985
|
+
{
|
3986
|
+
KSPROPERTY Property;
|
3987
|
+
TIMECODE_SAMPLE TimecodeSamp;
|
3988
|
+
}KSPROPERTY_TIMECODE_S, * PKSPROPERTY_TIMECODE_S;
|
3989
|
+
|
3990
|
+
typedef struct
|
3991
|
+
{
|
3992
|
+
KSP_NODE NodeProperty;
|
3993
|
+
TIMECODE_SAMPLE TimecodeSamp;
|
3994
|
+
}KSPROPERTY_TIMECODE_NODE_S, * PKSPROPERTY_TIMECODE_NODE_S;
|
3995
|
+
|
3996
|
+
# define STATIC_KSEVENTSETID_EXTDEV_Command \
|
3997
|
+
0x109c7988L, 0xb3cb, 0x11d2, 0xb4, 0x8e, 0x00, 0x60, 0x97, 0xb3, 0x39, 0x1b
|
3998
|
+
DEFINE_GUIDSTRUCT("109c7988-b3cb-11d2-b48e-006097b3391b", KSEVENTSETID_EXTDEV_Command);
|
3999
|
+
# define KSEVENTSETID_EXTDEV_Command DEFINE_GUIDNAMED(KSEVENTSETID_EXTDEV_Command)
|
4000
|
+
|
4001
|
+
typedef enum
|
4002
|
+
{
|
4003
|
+
KSEVENT_EXTDEV_COMMAND_NOTIFY_INTERIM_READY,
|
4004
|
+
KSEVENT_EXTDEV_COMMAND_CONTROL_INTERIM_READY,
|
4005
|
+
KSEVENT_EXTDEV_COMMAND_BUSRESET,
|
4006
|
+
KSEVENT_EXTDEV_TIMECODE_UPDATE,
|
4007
|
+
KSEVENT_EXTDEV_OPERATION_MODE_UPDATE,
|
4008
|
+
KSEVENT_EXTDEV_TRANSPORT_STATE_UPDATE,
|
4009
|
+
KSEVENT_EXTDEV_NOTIFY_REMOVAL,
|
4010
|
+
KSEVENT_EXTDEV_NOTIFY_MEDIUM_CHANGE
|
4011
|
+
}KSEVENT_DEVCMD;
|
4012
|
+
# endif /* __EDevCtrl__ */
|
4013
|
+
|
4014
|
+
# define STATIC_PROPSETID_VIDCAP_CROSSBAR \
|
4015
|
+
0x6a2e0640L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
4016
|
+
DEFINE_GUIDSTRUCT("6a2e0640-28e4-11d0-a18c-00a0c9118956", PROPSETID_VIDCAP_CROSSBAR);
|
4017
|
+
# define PROPSETID_VIDCAP_CROSSBAR DEFINE_GUIDNAMED(PROPSETID_VIDCAP_CROSSBAR)
|
4018
|
+
|
4019
|
+
typedef enum
|
4020
|
+
{
|
4021
|
+
KSPROPERTY_CROSSBAR_CAPS,
|
4022
|
+
KSPROPERTY_CROSSBAR_PININFO,
|
4023
|
+
KSPROPERTY_CROSSBAR_CAN_ROUTE,
|
4024
|
+
KSPROPERTY_CROSSBAR_ROUTE
|
4025
|
+
}KSPROPERTY_VIDCAP_CROSSBAR;
|
4026
|
+
|
4027
|
+
typedef struct
|
4028
|
+
{
|
4029
|
+
KSPROPERTY Property;
|
4030
|
+
ULONG NumberOfInputs;
|
4031
|
+
ULONG NumberOfOutputs;
|
4032
|
+
}KSPROPERTY_CROSSBAR_CAPS_S, * PKSPROPERTY_CROSSBAR_CAPS_S;
|
4033
|
+
|
4034
|
+
typedef struct
|
4035
|
+
{
|
4036
|
+
KSPROPERTY Property;
|
4037
|
+
KSPIN_DATAFLOW Direction;
|
4038
|
+
ULONG Index;
|
4039
|
+
ULONG PinType;
|
4040
|
+
ULONG RelatedPinIndex;
|
4041
|
+
KSPIN_MEDIUM Medium;
|
4042
|
+
}KSPROPERTY_CROSSBAR_PININFO_S, * PKSPROPERTY_CROSSBAR_PININFO_S;
|
4043
|
+
|
4044
|
+
typedef struct
|
4045
|
+
{
|
4046
|
+
KSPROPERTY Property;
|
4047
|
+
ULONG IndexInputPin;
|
4048
|
+
ULONG IndexOutputPin;
|
4049
|
+
ULONG CanRoute;
|
4050
|
+
}KSPROPERTY_CROSSBAR_ROUTE_S, * PKSPROPERTY_CROSSBAR_ROUTE_S;
|
4051
|
+
|
4052
|
+
# define STATIC_EVENTSETID_CROSSBAR \
|
4053
|
+
0x6a2e0641L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
4054
|
+
DEFINE_GUIDSTRUCT("6a2e0641-28e4-11d0-a18c-00a0c9118956", EVENTSETID_CROSSBAR);
|
4055
|
+
# define EVENTSETID_CROSSBAR DEFINE_GUIDNAMED(EVENTSETID_CROSSBAR)
|
4056
|
+
|
4057
|
+
typedef enum
|
4058
|
+
{
|
4059
|
+
KSEVENT_CROSSBAR_CHANGED
|
4060
|
+
}KSEVENT_CROSSBAR;
|
4061
|
+
|
4062
|
+
typedef enum
|
4063
|
+
{
|
4064
|
+
KS_PhysConn_Video_Tuner = 1,
|
4065
|
+
KS_PhysConn_Video_Composite,
|
4066
|
+
KS_PhysConn_Video_SVideo,
|
4067
|
+
KS_PhysConn_Video_RGB,
|
4068
|
+
KS_PhysConn_Video_YRYBY,
|
4069
|
+
KS_PhysConn_Video_SerialDigital,
|
4070
|
+
KS_PhysConn_Video_ParallelDigital,
|
4071
|
+
KS_PhysConn_Video_SCSI,
|
4072
|
+
KS_PhysConn_Video_AUX,
|
4073
|
+
KS_PhysConn_Video_1394,
|
4074
|
+
KS_PhysConn_Video_USB,
|
4075
|
+
KS_PhysConn_Video_VideoDecoder,
|
4076
|
+
KS_PhysConn_Video_VideoEncoder,
|
4077
|
+
KS_PhysConn_Video_SCART,
|
4078
|
+
KS_PhysConn_Audio_Tuner = 4096,
|
4079
|
+
KS_PhysConn_Audio_Line,
|
4080
|
+
KS_PhysConn_Audio_Mic,
|
4081
|
+
KS_PhysConn_Audio_AESDigital,
|
4082
|
+
KS_PhysConn_Audio_SPDIFDigital,
|
4083
|
+
KS_PhysConn_Audio_SCSI,
|
4084
|
+
KS_PhysConn_Audio_AUX,
|
4085
|
+
KS_PhysConn_Audio_1394,
|
4086
|
+
KS_PhysConn_Audio_USB,
|
4087
|
+
KS_PhysConn_Audio_AudioDecoder
|
4088
|
+
}KS_PhysicalConnectorType;
|
4089
|
+
|
4090
|
+
# define STATIC_PROPSETID_VIDCAP_TVAUDIO \
|
4091
|
+
0x6a2e0650L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
4092
|
+
DEFINE_GUIDSTRUCT("6a2e0650-28e4-11d0-a18c-00a0c9118956", PROPSETID_VIDCAP_TVAUDIO);
|
4093
|
+
# define PROPSETID_VIDCAP_TVAUDIO DEFINE_GUIDNAMED(PROPSETID_VIDCAP_TVAUDIO)
|
4094
|
+
|
4095
|
+
typedef enum
|
4096
|
+
{
|
4097
|
+
KSPROPERTY_TVAUDIO_CAPS,
|
4098
|
+
KSPROPERTY_TVAUDIO_MODE,
|
4099
|
+
KSPROPERTY_TVAUDIO_CURRENTLY_AVAILABLE_MODES
|
4100
|
+
}KSPROPERTY_VIDCAP_TVAUDIO;
|
4101
|
+
|
4102
|
+
# define KS_TVAUDIO_MODE_MONO 0x0001
|
4103
|
+
# define KS_TVAUDIO_MODE_STEREO 0x0002
|
4104
|
+
# define KS_TVAUDIO_MODE_LANG_A 0x0010
|
4105
|
+
# define KS_TVAUDIO_MODE_LANG_B 0x0020
|
4106
|
+
# define KS_TVAUDIO_MODE_LANG_C 0x0040
|
4107
|
+
|
4108
|
+
typedef struct
|
4109
|
+
{
|
4110
|
+
KSPROPERTY Property;
|
4111
|
+
ULONG Capabilities;
|
4112
|
+
KSPIN_MEDIUM InputMedium;
|
4113
|
+
KSPIN_MEDIUM OutputMedium;
|
4114
|
+
}KSPROPERTY_TVAUDIO_CAPS_S, * PKSPROPERTY_TVAUDIO_CAPS_S;
|
4115
|
+
|
4116
|
+
typedef struct
|
4117
|
+
{
|
4118
|
+
KSPROPERTY Property;
|
4119
|
+
ULONG Mode;
|
4120
|
+
}KSPROPERTY_TVAUDIO_S, * PKSPROPERTY_TVAUDIO_S;
|
4121
|
+
|
4122
|
+
# define STATIC_KSEVENTSETID_VIDCAP_TVAUDIO \
|
4123
|
+
0x6a2e0651L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
4124
|
+
DEFINE_GUIDSTRUCT("6a2e0651-28e4-11d0-a18c-00a0c9118956", KSEVENTSETID_VIDCAP_TVAUDIO);
|
4125
|
+
# define KSEVENTSETID_VIDCAP_TVAUDIO DEFINE_GUIDNAMED(KSEVENTSETID_VIDCAP_TVAUDIO)
|
4126
|
+
|
4127
|
+
typedef enum
|
4128
|
+
{
|
4129
|
+
KSEVENT_TVAUDIO_CHANGED
|
4130
|
+
}KSEVENT_TVAUDIO;
|
4131
|
+
|
4132
|
+
# define STATIC_PROPSETID_VIDCAP_VIDEOCOMPRESSION \
|
4133
|
+
0xC6E13343L, 0x30AC, 0x11d0, 0xA1, 0x8C, 0x00, 0xA0, 0xC9, 0x11, 0x89, 0x56
|
4134
|
+
DEFINE_GUIDSTRUCT("C6E13343-30AC-11d0-A18C-00A0C9118956", PROPSETID_VIDCAP_VIDEOCOMPRESSION);
|
4135
|
+
# define PROPSETID_VIDCAP_VIDEOCOMPRESSION DEFINE_GUIDNAMED(PROPSETID_VIDCAP_VIDEOCOMPRESSION)
|
4136
|
+
|
4137
|
+
typedef enum
|
4138
|
+
{
|
4139
|
+
KSPROPERTY_VIDEOCOMPRESSION_GETINFO,
|
4140
|
+
KSPROPERTY_VIDEOCOMPRESSION_KEYFRAME_RATE,
|
4141
|
+
KSPROPERTY_VIDEOCOMPRESSION_PFRAMES_PER_KEYFRAME,
|
4142
|
+
KSPROPERTY_VIDEOCOMPRESSION_QUALITY,
|
4143
|
+
KSPROPERTY_VIDEOCOMPRESSION_OVERRIDE_KEYFRAME,
|
4144
|
+
KSPROPERTY_VIDEOCOMPRESSION_OVERRIDE_FRAME_SIZE,
|
4145
|
+
KSPROPERTY_VIDEOCOMPRESSION_WINDOWSIZE
|
4146
|
+
}KSPROPERTY_VIDCAP_VIDEOCOMPRESSION;
|
4147
|
+
|
4148
|
+
typedef enum
|
4149
|
+
{
|
4150
|
+
KS_CompressionCaps_CanQuality = 1,
|
4151
|
+
KS_CompressionCaps_CanCrunch = 2,
|
4152
|
+
KS_CompressionCaps_CanKeyFrame = 4,
|
4153
|
+
KS_CompressionCaps_CanBFrame = 8,
|
4154
|
+
KS_CompressionCaps_CanWindow = 0x10
|
4155
|
+
}KS_CompressionCaps;
|
4156
|
+
|
4157
|
+
typedef enum
|
4158
|
+
{
|
4159
|
+
KS_StreamingHint_FrameInterval = 0x0100,
|
4160
|
+
KS_StreamingHint_KeyFrameRate = 0x0200,
|
4161
|
+
KS_StreamingHint_PFrameRate = 0x0400,
|
4162
|
+
KS_StreamingHint_CompQuality = 0x0800,
|
4163
|
+
KS_StreamingHint_CompWindowSize = 0x1000
|
4164
|
+
}KS_VideoStreamingHints;
|
4165
|
+
|
4166
|
+
typedef struct
|
4167
|
+
{
|
4168
|
+
KSPROPERTY Property;
|
4169
|
+
ULONG StreamIndex;
|
4170
|
+
LONG DefaultKeyFrameRate;
|
4171
|
+
LONG DefaultPFrameRate;
|
4172
|
+
LONG DefaultQuality;
|
4173
|
+
LONG NumberOfQualitySettings;
|
4174
|
+
LONG Capabilities;
|
4175
|
+
}KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S, * PKSPROPERTY_VIDEOCOMPRESSION_GETINFO_S;
|
4176
|
+
|
4177
|
+
typedef struct
|
4178
|
+
{
|
4179
|
+
KSPROPERTY Property;
|
4180
|
+
ULONG StreamIndex;
|
4181
|
+
LONG Value;
|
4182
|
+
}KSPROPERTY_VIDEOCOMPRESSION_S, * PKSPROPERTY_VIDEOCOMPRESSION_S;
|
4183
|
+
|
4184
|
+
typedef struct
|
4185
|
+
{
|
4186
|
+
KSPROPERTY Property;
|
4187
|
+
ULONG StreamIndex;
|
4188
|
+
LONG Value;
|
4189
|
+
ULONG Flags;
|
4190
|
+
}KSPROPERTY_VIDEOCOMPRESSION_S1, * PKSPROPERTY_VIDEOCOMPRESSION_S1;
|
4191
|
+
|
4192
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_OVERLAY \
|
4193
|
+
0xe436eb7fL, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70
|
4194
|
+
DEFINE_GUIDSTRUCT("e436eb7f-524f-11ce-9f53-0020af0ba770", KSDATAFORMAT_SUBTYPE_OVERLAY);
|
4195
|
+
# define KSDATAFORMAT_SUBTYPE_OVERLAY DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_OVERLAY)
|
4196
|
+
|
4197
|
+
# define STATIC_KSPROPSETID_OverlayUpdate \
|
4198
|
+
0x490EA5CFL, 0x7681, 0x11D1, 0xA2, 0x1C, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96
|
4199
|
+
DEFINE_GUIDSTRUCT("490EA5CF-7681-11D1-A21C-00A0C9223196", KSPROPSETID_OverlayUpdate);
|
4200
|
+
# define KSPROPSETID_OverlayUpdate DEFINE_GUIDNAMED(KSPROPSETID_OverlayUpdate)
|
4201
|
+
|
4202
|
+
typedef enum
|
4203
|
+
{
|
4204
|
+
KSPROPERTY_OVERLAYUPDATE_INTERESTS,
|
4205
|
+
KSPROPERTY_OVERLAYUPDATE_CLIPLIST = 0x1,
|
4206
|
+
KSPROPERTY_OVERLAYUPDATE_PALETTE = 0x2,
|
4207
|
+
KSPROPERTY_OVERLAYUPDATE_COLORKEY = 0x4,
|
4208
|
+
KSPROPERTY_OVERLAYUPDATE_VIDEOPOSITION = 0x8,
|
4209
|
+
KSPROPERTY_OVERLAYUPDATE_DISPLAYCHANGE = 0x10,
|
4210
|
+
KSPROPERTY_OVERLAYUPDATE_COLORREF = 0x10000000
|
4211
|
+
}KSPROPERTY_OVERLAYUPDATE;
|
4212
|
+
|
4213
|
+
typedef struct
|
4214
|
+
{
|
4215
|
+
ULONG PelsWidth;
|
4216
|
+
ULONG PelsHeight;
|
4217
|
+
ULONG BitsPerPel;
|
4218
|
+
WCHAR DeviceID[1];
|
4219
|
+
}KSDISPLAYCHANGE, * PKSDISPLAYCHANGE;
|
4220
|
+
|
4221
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_INTERESTS(Handler) \
|
4222
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4223
|
+
KSPROPERTY_OVERLAYUPDATE_INTERESTS, \
|
4224
|
+
(Handler), \
|
4225
|
+
sizeof(KSPROPERTY), \
|
4226
|
+
sizeof(ULONG), \
|
4227
|
+
NULL, NULL, 0, NULL, NULL, 0)
|
4228
|
+
|
4229
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_PALETTE(Handler) \
|
4230
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4231
|
+
KSPROPERTY_OVERLAYUPDATE_PALETTE, \
|
4232
|
+
NULL, \
|
4233
|
+
sizeof(KSPROPERTY), \
|
4234
|
+
0, \
|
4235
|
+
(Handler), \
|
4236
|
+
NULL, 0, NULL, NULL, 0)
|
4237
|
+
|
4238
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_COLORKEY(Handler) \
|
4239
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4240
|
+
KSPROPERTY_OVERLAYUPDATE_COLORKEY, \
|
4241
|
+
NULL, \
|
4242
|
+
sizeof(KSPROPERTY), \
|
4243
|
+
sizeof(COLORKEY), \
|
4244
|
+
(Handler), \
|
4245
|
+
NULL, 0, NULL, NULL, 0)
|
4246
|
+
|
4247
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_CLIPLIST(Handler) \
|
4248
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4249
|
+
KSPROPERTY_OVERLAYUPDATE_CLIPLIST, \
|
4250
|
+
NULL, \
|
4251
|
+
sizeof(KSPROPERTY), \
|
4252
|
+
2 * sizeof(RECT) + sizeof(RGNDATAHEADER), \
|
4253
|
+
(Handler), \
|
4254
|
+
NULL, 0, NULL, NULL, 0)
|
4255
|
+
|
4256
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_VIDEOPOSITION(Handler) \
|
4257
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4258
|
+
KSPROPERTY_OVERLAYUPDATE_VIDEOPOSITION, \
|
4259
|
+
NULL, \
|
4260
|
+
sizeof(KSPROPERTY), \
|
4261
|
+
2 * sizeof(RECT), \
|
4262
|
+
(Handler), \
|
4263
|
+
NULL, 0, NULL, NULL, 0)
|
4264
|
+
|
4265
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_DISPLAYCHANGE(Handler) \
|
4266
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4267
|
+
KSPROPERTY_OVERLAYUPDATE_DISPLAYCHANGE, \
|
4268
|
+
NULL, \
|
4269
|
+
sizeof(KSPROPERTY), \
|
4270
|
+
sizeof(KSDISPLAYCHANGE), \
|
4271
|
+
(Handler), \
|
4272
|
+
NULL, 0, NULL, NULL, 0)
|
4273
|
+
|
4274
|
+
# define DEFINE_KSPROPERTY_ITEM_OVERLAYUPDATE_COLORREF(Handler) \
|
4275
|
+
DEFINE_KSPROPERTY_ITEM( \
|
4276
|
+
KSPROPERTY_OVERLAYUPDATE_COLORREF, \
|
4277
|
+
(Handler), \
|
4278
|
+
sizeof(KSPROPERTY), \
|
4279
|
+
sizeof(COLORREF), \
|
4280
|
+
NULL, \
|
4281
|
+
NULL, 0, NULL, NULL, 0)
|
4282
|
+
|
4283
|
+
# define STATIC_PROPSETID_VIDCAP_VIDEOCONTROL \
|
4284
|
+
0x6a2e0670L, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
4285
|
+
DEFINE_GUIDSTRUCT("6a2e0670-28e4-11d0-a18c-00a0c9118956", PROPSETID_VIDCAP_VIDEOCONTROL);
|
4286
|
+
# define PROPSETID_VIDCAP_VIDEOCONTROL DEFINE_GUIDNAMED(PROPSETID_VIDCAP_VIDEOCONTROL)
|
4287
|
+
|
4288
|
+
typedef enum
|
4289
|
+
{
|
4290
|
+
KSPROPERTY_VIDEOCONTROL_CAPS,
|
4291
|
+
KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE,
|
4292
|
+
KSPROPERTY_VIDEOCONTROL_FRAME_RATES,
|
4293
|
+
KSPROPERTY_VIDEOCONTROL_MODE
|
4294
|
+
}KSPROPERTY_VIDCAP_VIDEOCONTROL;
|
4295
|
+
|
4296
|
+
typedef enum
|
4297
|
+
{
|
4298
|
+
KS_VideoControlFlag_FlipHorizontal = 0x0001,
|
4299
|
+
KS_VideoControlFlag_FlipVertical = 0x0002,
|
4300
|
+
KS_Obsolete_VideoControlFlag_ExternalTriggerEnable = 0x0010,
|
4301
|
+
KS_Obsolete_VideoControlFlag_Trigger = 0x0020,
|
4302
|
+
KS_VideoControlFlag_ExternalTriggerEnable = 0x0004,
|
4303
|
+
KS_VideoControlFlag_Trigger = 0x0008
|
4304
|
+
}KS_VideoControlFlags;
|
4305
|
+
|
4306
|
+
typedef struct
|
4307
|
+
{
|
4308
|
+
KSPROPERTY Property;
|
4309
|
+
ULONG StreamIndex;
|
4310
|
+
ULONG VideoControlCaps;
|
4311
|
+
}KSPROPERTY_VIDEOCONTROL_CAPS_S, * PKSPROPERTY_VIDEOCONTROL_CAPS_S;
|
4312
|
+
|
4313
|
+
typedef struct
|
4314
|
+
{
|
4315
|
+
KSPROPERTY Property;
|
4316
|
+
ULONG StreamIndex;
|
4317
|
+
LONG Mode;
|
4318
|
+
}KSPROPERTY_VIDEOCONTROL_MODE_S, * PKSPROPERTY_VIDEOCONTROL_MODE_S;
|
4319
|
+
|
4320
|
+
typedef struct
|
4321
|
+
{
|
4322
|
+
KSPROPERTY Property;
|
4323
|
+
ULONG StreamIndex;
|
4324
|
+
ULONG RangeIndex;
|
4325
|
+
SIZE Dimensions;
|
4326
|
+
LONGLONG CurrentActualFrameRate;
|
4327
|
+
LONGLONG CurrentMaxAvailableFrameRate;
|
4328
|
+
}KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S, * PKSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S;
|
4329
|
+
|
4330
|
+
typedef struct
|
4331
|
+
{
|
4332
|
+
KSPROPERTY Property;
|
4333
|
+
ULONG StreamIndex;
|
4334
|
+
ULONG RangeIndex;
|
4335
|
+
SIZE Dimensions;
|
4336
|
+
}KSPROPERTY_VIDEOCONTROL_FRAME_RATES_S, * PKSPROPERTY_VIDEOCONTROL_FRAME_RATES_S;
|
4337
|
+
|
4338
|
+
# define STATIC_PROPSETID_VIDCAP_DROPPEDFRAMES \
|
4339
|
+
0xC6E13344L, 0x30AC, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56
|
4340
|
+
DEFINE_GUIDSTRUCT("C6E13344-30AC-11d0-A18C-00A0C9118956", PROPSETID_VIDCAP_DROPPEDFRAMES);
|
4341
|
+
# define PROPSETID_VIDCAP_DROPPEDFRAMES DEFINE_GUIDNAMED(PROPSETID_VIDCAP_DROPPEDFRAMES)
|
4342
|
+
|
4343
|
+
typedef enum
|
4344
|
+
{
|
4345
|
+
KSPROPERTY_DROPPEDFRAMES_CURRENT
|
4346
|
+
}KSPROPERTY_VIDCAP_DROPPEDFRAMES;
|
4347
|
+
|
4348
|
+
typedef struct
|
4349
|
+
{
|
4350
|
+
KSPROPERTY Property;
|
4351
|
+
LONGLONG PictureNumber;
|
4352
|
+
LONGLONG DropCount;
|
4353
|
+
ULONG AverageFrameSize;
|
4354
|
+
}KSPROPERTY_DROPPEDFRAMES_CURRENT_S, * PKSPROPERTY_DROPPEDFRAMES_CURRENT_S;
|
4355
|
+
|
4356
|
+
# define STATIC_KSPROPSETID_VPConfig \
|
4357
|
+
0xbc29a660L, 0x30e3, 0x11d0, 0x9e, 0x69, 0x00, 0xc0, 0x4f, 0xd7, 0xc1, 0x5b
|
4358
|
+
DEFINE_GUIDSTRUCT("bc29a660-30e3-11d0-9e69-00c04fd7c15b", KSPROPSETID_VPConfig);
|
4359
|
+
# define KSPROPSETID_VPConfig DEFINE_GUIDNAMED(KSPROPSETID_VPConfig)
|
4360
|
+
|
4361
|
+
# define STATIC_KSPROPSETID_VPVBIConfig \
|
4362
|
+
0xec529b00L, 0x1a1f, 0x11d1, 0xba, 0xd9, 0x0, 0x60, 0x97, 0x44, 0x11, 0x1a
|
4363
|
+
DEFINE_GUIDSTRUCT("ec529b00-1a1f-11d1-bad9-00609744111a", KSPROPSETID_VPVBIConfig);
|
4364
|
+
# define KSPROPSETID_VPVBIConfig DEFINE_GUIDNAMED(KSPROPSETID_VPVBIConfig)
|
4365
|
+
|
4366
|
+
typedef enum
|
4367
|
+
{
|
4368
|
+
KSPROPERTY_VPCONFIG_NUMCONNECTINFO,
|
4369
|
+
KSPROPERTY_VPCONFIG_GETCONNECTINFO,
|
4370
|
+
KSPROPERTY_VPCONFIG_SETCONNECTINFO,
|
4371
|
+
KSPROPERTY_VPCONFIG_VPDATAINFO,
|
4372
|
+
KSPROPERTY_VPCONFIG_MAXPIXELRATE,
|
4373
|
+
KSPROPERTY_VPCONFIG_INFORMVPINPUT,
|
4374
|
+
KSPROPERTY_VPCONFIG_NUMVIDEOFORMAT,
|
4375
|
+
KSPROPERTY_VPCONFIG_GETVIDEOFORMAT,
|
4376
|
+
KSPROPERTY_VPCONFIG_SETVIDEOFORMAT,
|
4377
|
+
KSPROPERTY_VPCONFIG_INVERTPOLARITY,
|
4378
|
+
KSPROPERTY_VPCONFIG_DECIMATIONCAPABILITY,
|
4379
|
+
KSPROPERTY_VPCONFIG_SCALEFACTOR,
|
4380
|
+
KSPROPERTY_VPCONFIG_DDRAWHANDLE,
|
4381
|
+
KSPROPERTY_VPCONFIG_VIDEOPORTID,
|
4382
|
+
KSPROPERTY_VPCONFIG_DDRAWSURFACEHANDLE,
|
4383
|
+
KSPROPERTY_VPCONFIG_SURFACEPARAMS
|
4384
|
+
}KSPROPERTY_VPCONFIG;
|
4385
|
+
|
4386
|
+
# define STATIC_CLSID_KsIBasicAudioInterfaceHandler \
|
4387
|
+
0xb9f8ac3e, 0x0f71, 0x11d2, 0xb7, 0x2c, 0x00, 0xc0, 0x4f, 0xb6, 0xbd, 0x3d
|
4388
|
+
DEFINE_GUIDSTRUCT("b9f8ac3e-0f71-11d2-b72c-00c04fb6bd3d", CLSID_KsIBasicAudioInterfaceHandler);
|
4389
|
+
# define CLSID_KsIBasicAudioInterfaceHandler DEFINE_GUIDNAMED(CLSID_KsIBasicAudioInterfaceHandler)
|
4390
|
+
|
4391
|
+
# ifdef __IVPType__
|
4392
|
+
typedef struct
|
4393
|
+
{
|
4394
|
+
AMVPSIZE Size;
|
4395
|
+
DWORD MaxPixelsPerSecond;
|
4396
|
+
DWORD Reserved;
|
4397
|
+
}KSVPMAXPIXELRATE, * PKSVPMAXPIXELRATE;
|
4398
|
+
|
4399
|
+
typedef struct
|
4400
|
+
{
|
4401
|
+
KSPROPERTY Property;
|
4402
|
+
AMVPSIZE Size;
|
4403
|
+
}KSVPSIZE_PROP, * PKSVPSIZE_PROP;
|
4404
|
+
|
4405
|
+
typedef struct
|
4406
|
+
{
|
4407
|
+
DWORD dwPitch;
|
4408
|
+
DWORD dwXOrigin;
|
4409
|
+
DWORD dwYOrigin;
|
4410
|
+
}KSVPSURFACEPARAMS, * PKSVPSURFACEPARAMS;
|
4411
|
+
# else /* __IVPType__ */
|
4412
|
+
|
4413
|
+
# ifndef __DDRAW_INCLUDED__
|
4414
|
+
# define DDPF_FOURCC 0x00000004l
|
4415
|
+
|
4416
|
+
typedef struct _DDPIXELFORMAT
|
4417
|
+
{
|
4418
|
+
DWORD dwSize;
|
4419
|
+
DWORD dwFlags;
|
4420
|
+
DWORD dwFourCC;
|
4421
|
+
__MINGW_EXTENSION union
|
4422
|
+
{
|
4423
|
+
DWORD dwRGBBitCount;
|
4424
|
+
DWORD dwYUVBitCount;
|
4425
|
+
DWORD dwZBufferBitDepth;
|
4426
|
+
DWORD dwAlphaBitDepth;
|
4427
|
+
};
|
4428
|
+
__MINGW_EXTENSION union
|
4429
|
+
{
|
4430
|
+
DWORD dwRBitMask;
|
4431
|
+
DWORD dwYBitMask;
|
4432
|
+
};
|
4433
|
+
__MINGW_EXTENSION union
|
4434
|
+
{
|
4435
|
+
DWORD dwGBitMask;
|
4436
|
+
DWORD dwUBitMask;
|
4437
|
+
};
|
4438
|
+
__MINGW_EXTENSION union
|
4439
|
+
{
|
4440
|
+
DWORD dwBBitMask;
|
4441
|
+
DWORD dwVBitMask;
|
4442
|
+
};
|
4443
|
+
__MINGW_EXTENSION union
|
4444
|
+
{
|
4445
|
+
DWORD dwRGBAlphaBitMask;
|
4446
|
+
DWORD dwYUVAlphaBitMask;
|
4447
|
+
DWORD dwRGBZBitMask;
|
4448
|
+
DWORD dwYUVZBitMask;
|
4449
|
+
};
|
4450
|
+
}DDPIXELFORMAT, * LPDDPIXELFORMAT;
|
4451
|
+
# endif /* __DDRAW_INCLUDED__ */
|
4452
|
+
|
4453
|
+
# ifndef __DVP_INCLUDED__
|
4454
|
+
typedef struct _DDVIDEOPORTCONNECT
|
4455
|
+
{
|
4456
|
+
DWORD dwSize;
|
4457
|
+
DWORD dwPortWidth;
|
4458
|
+
GUID guidTypeID;
|
4459
|
+
DWORD dwFlags;
|
4460
|
+
ULONG_PTR dwReserved1;
|
4461
|
+
}DDVIDEOPORTCONNECT, * LPDDVIDEOPORTCONNECT;
|
4462
|
+
|
4463
|
+
# define DDVPTYPE_E_HREFH_VREFH \
|
4464
|
+
0x54F39980L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8
|
4465
|
+
|
4466
|
+
# define DDVPTYPE_E_HREFL_VREFL \
|
4467
|
+
0xE09C77E0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8
|
4468
|
+
# endif /* __DVP_INCLUDED__ */
|
4469
|
+
|
4470
|
+
typedef enum
|
4471
|
+
{
|
4472
|
+
KS_PixAspectRatio_NTSC4x3,
|
4473
|
+
KS_PixAspectRatio_NTSC16x9,
|
4474
|
+
KS_PixAspectRatio_PAL4x3,
|
4475
|
+
KS_PixAspectRatio_PAL16x9
|
4476
|
+
}KS_AMPixAspectRatio;
|
4477
|
+
|
4478
|
+
typedef enum
|
4479
|
+
{
|
4480
|
+
KS_AMVP_DO_NOT_CARE,
|
4481
|
+
KS_AMVP_BEST_BANDWIDTH,
|
4482
|
+
KS_AMVP_INPUT_SAME_AS_OUTPUT
|
4483
|
+
}KS_AMVP_SELECTFORMATBY;
|
4484
|
+
|
4485
|
+
typedef enum
|
4486
|
+
{
|
4487
|
+
KS_AMVP_MODE_WEAVE,
|
4488
|
+
KS_AMVP_MODE_BOBINTERLEAVED,
|
4489
|
+
KS_AMVP_MODE_BOBNONINTERLEAVED,
|
4490
|
+
KS_AMVP_MODE_SKIPEVEN,
|
4491
|
+
KS_AMVP_MODE_SKIPODD
|
4492
|
+
}KS_AMVP_MODE;
|
4493
|
+
|
4494
|
+
typedef struct tagKS_AMVPDIMINFO
|
4495
|
+
{
|
4496
|
+
DWORD dwFieldWidth;
|
4497
|
+
DWORD dwFieldHeight;
|
4498
|
+
DWORD dwVBIWidth;
|
4499
|
+
DWORD dwVBIHeight;
|
4500
|
+
RECT rcValidRegion;
|
4501
|
+
}KS_AMVPDIMINFO, * PKS_AMVPDIMINFO;
|
4502
|
+
|
4503
|
+
typedef struct tagKS_AMVPDATAINFO
|
4504
|
+
{
|
4505
|
+
DWORD dwSize;
|
4506
|
+
DWORD dwMicrosecondsPerField;
|
4507
|
+
KS_AMVPDIMINFO amvpDimInfo;
|
4508
|
+
DWORD dwPictAspectRatioX;
|
4509
|
+
DWORD dwPictAspectRatioY;
|
4510
|
+
WINBOOL bEnableDoubleClock;
|
4511
|
+
WINBOOL bEnableVACT;
|
4512
|
+
WINBOOL bDataIsInterlaced;
|
4513
|
+
LONG lHalfLinesOdd;
|
4514
|
+
WINBOOL bFieldPolarityInverted;
|
4515
|
+
DWORD dwNumLinesInVREF;
|
4516
|
+
LONG lHalfLinesEven;
|
4517
|
+
DWORD dwReserved1;
|
4518
|
+
}KS_AMVPDATAINFO, * PKS_AMVPDATAINFO;
|
4519
|
+
|
4520
|
+
typedef struct tagKS_AMVPSIZE
|
4521
|
+
{
|
4522
|
+
DWORD dwWidth;
|
4523
|
+
DWORD dwHeight;
|
4524
|
+
}KS_AMVPSIZE, * PKS_AMVPSIZE;
|
4525
|
+
|
4526
|
+
typedef struct
|
4527
|
+
{
|
4528
|
+
KS_AMVPSIZE Size;
|
4529
|
+
DWORD MaxPixelsPerSecond;
|
4530
|
+
DWORD Reserved;
|
4531
|
+
}KSVPMAXPIXELRATE, * PKSVPMAXPIXELRATE;
|
4532
|
+
|
4533
|
+
typedef struct
|
4534
|
+
{
|
4535
|
+
KSPROPERTY Property;
|
4536
|
+
KS_AMVPSIZE Size;
|
4537
|
+
}KSVPSIZE_PROP, * PKSVPSIZE_PROP;
|
4538
|
+
|
4539
|
+
typedef struct
|
4540
|
+
{
|
4541
|
+
DWORD dwPitch;
|
4542
|
+
DWORD dwXOrigin;
|
4543
|
+
DWORD dwYOrigin;
|
4544
|
+
}KSVPSURFACEPARAMS, * PKSVPSURFACEPARAMS;
|
4545
|
+
# endif /* __IVPType__ */
|
4546
|
+
|
4547
|
+
# define STATIC_KSEVENTSETID_VPNotify \
|
4548
|
+
0x20c5598eL, 0xd3c8, 0x11d0, 0x8d, 0xfc, 0x00, 0xc0, 0x4f, 0xd7, 0xc0, 0x8b
|
4549
|
+
DEFINE_GUIDSTRUCT("20c5598e-d3c8-11d0-8dfc-00c04fd7c08b", KSEVENTSETID_VPNotify);
|
4550
|
+
# define KSEVENTSETID_VPNotify DEFINE_GUIDNAMED(KSEVENTSETID_VPNotify)
|
4551
|
+
|
4552
|
+
typedef enum
|
4553
|
+
{
|
4554
|
+
KSEVENT_VPNOTIFY_FORMATCHANGE
|
4555
|
+
}KSEVENT_VPNOTIFY;
|
4556
|
+
|
4557
|
+
# define STATIC_KSEVENTSETID_VIDCAPTOSTI \
|
4558
|
+
0xdb47de20, 0xf628, 0x11d1, 0xba, 0x41, 0x0, 0xa0, 0xc9, 0xd, 0x2b, 0x5
|
4559
|
+
DEFINE_GUIDSTRUCT("DB47DE20-F628-11d1-BA41-00A0C90D2B05", KSEVENTSETID_VIDCAPTOSTI);
|
4560
|
+
# define KSEVENTSETID_VIDCAPNotify DEFINE_GUIDNAMED(KSEVENTSETID_VIDCAPTOSTI)
|
4561
|
+
|
4562
|
+
typedef enum
|
4563
|
+
{
|
4564
|
+
KSEVENT_VIDCAPTOSTI_EXT_TRIGGER,
|
4565
|
+
KSEVENT_VIDCAP_AUTO_UPDATE,
|
4566
|
+
KSEVENT_VIDCAP_SEARCH
|
4567
|
+
}KSEVENT_VIDCAPTOSTI;
|
4568
|
+
|
4569
|
+
typedef enum
|
4570
|
+
{
|
4571
|
+
KSPROPERTY_EXTENSION_UNIT_INFO,
|
4572
|
+
KSPROPERTY_EXTENSION_UNIT_CONTROL,
|
4573
|
+
KSPROPERTY_EXTENSION_UNIT_PASS_THROUGH = 0xffff
|
4574
|
+
}KSPROPERTY_EXTENSION_UNIT, * PKSPROPERTY_EXTENSION_UNIT;
|
4575
|
+
|
4576
|
+
# define STATIC_KSEVENTSETID_VPVBINotify \
|
4577
|
+
0xec529b01L, 0x1a1f, 0x11d1, 0xba, 0xd9, 0x0, 0x60, 0x97, 0x44, 0x11, 0x1a
|
4578
|
+
DEFINE_GUIDSTRUCT("ec529b01-1a1f-11d1-bad9-00609744111a", KSEVENTSETID_VPVBINotify);
|
4579
|
+
# define KSEVENTSETID_VPVBINotify DEFINE_GUIDNAMED(KSEVENTSETID_VPVBINotify)
|
4580
|
+
|
4581
|
+
typedef enum
|
4582
|
+
{
|
4583
|
+
KSEVENT_VPVBINOTIFY_FORMATCHANGE
|
4584
|
+
}KSEVENT_VPVBINOTIFY;
|
4585
|
+
|
4586
|
+
# define STATIC_KSDATAFORMAT_TYPE_AUXLine21Data \
|
4587
|
+
0x670aea80L, 0x3a82, 0x11d0, 0xb7, 0x9b, 0x00, 0xaa, 0x00, 0x37, 0x67, 0xa7
|
4588
|
+
DEFINE_GUIDSTRUCT("670aea80-3a82-11d0-b79b-00aa003767a7", KSDATAFORMAT_TYPE_AUXLine21Data);
|
4589
|
+
# define KSDATAFORMAT_TYPE_AUXLine21Data DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_AUXLine21Data)
|
4590
|
+
|
4591
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_Line21_BytePair \
|
4592
|
+
0x6e8d4a22L, 0x310c, 0x11d0, 0xb7, 0x9a, 0x00, 0xaa, 0x00, 0x37, 0x67, 0xa7
|
4593
|
+
DEFINE_GUIDSTRUCT("6e8d4a22-310c-11d0-b79a-00aa003767a7", KSDATAFORMAT_SUBTYPE_Line21_BytePair);
|
4594
|
+
# define KSDATAFORMAT_SUBTYPE_Line21_BytePair DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_Line21_BytePair)
|
4595
|
+
|
4596
|
+
# define STATIC_KSDATAFORMAT_SUBTYPE_Line21_GOPPacket \
|
4597
|
+
0x6e8d4a23L, 0x310c, 0x11d0, 0xb7, 0x9a, 0x00, 0xaa, 0x00, 0x37, 0x67, 0xa7
|
4598
|
+
DEFINE_GUIDSTRUCT("6e8d4a23-310c-11d0-b79a-00aa003767a7", KSDATAFORMAT_SUBTYPE_Line21_GOPPacket);
|
4599
|
+
# define KSDATAFORMAT_SUBTYPE_Line21_GOPPacket DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_Line21_GOPPacket)
|
4600
|
+
|
4601
|
+
typedef struct _KSGOP_USERDATA
|
4602
|
+
{
|
4603
|
+
ULONG sc;
|
4604
|
+
ULONG reserved1;
|
4605
|
+
BYTE cFields;
|
4606
|
+
CHAR l21Data[3];
|
4607
|
+
}KSGOP_USERDATA, * PKSGOP_USERDATA;
|
4608
|
+
|
4609
|
+
# define STATIC_KSDATAFORMAT_TYPE_DVD_ENCRYPTED_PACK \
|
4610
|
+
0xed0b916a, 0x044d, 0x11d1, 0xaa, 0x78, 0x00, 0xc0, 0x4f, 0xc3, 0x1d, 0x60
|
4611
|
+
DEFINE_GUIDSTRUCT("ed0b916a-044d-11d1-aa78-00c04fc31d60", KSDATAFORMAT_TYPE_DVD_ENCRYPTED_PACK);
|
4612
|
+
# define KSDATAFORMAT_TYPE_DVD_ENCRYPTED_PACK DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_DVD_ENCRYPTED_PACK)
|
4613
|
+
|
4614
|
+
# define KS_AM_UseNewCSSKey 0x1
|
4615
|
+
|
4616
|
+
# define STATIC_KSPROPSETID_TSRateChange \
|
4617
|
+
0xa503c5c0, 0x1d1d, 0x11d1, 0xad, 0x80, 0x44, 0x45, 0x53, 0x54, 0x0, 0x0
|
4618
|
+
DEFINE_GUIDSTRUCT("A503C5C0-1D1D-11D1-AD80-444553540000", KSPROPSETID_TSRateChange);
|
4619
|
+
# define KSPROPSETID_TSRateChange DEFINE_GUIDNAMED(KSPROPSETID_TSRateChange)
|
4620
|
+
|
4621
|
+
typedef enum
|
4622
|
+
{
|
4623
|
+
KS_AM_RATE_SimpleRateChange = 1,
|
4624
|
+
KS_AM_RATE_ExactRateChange = 2,
|
4625
|
+
KS_AM_RATE_MaxFullDataRate = 3,
|
4626
|
+
KS_AM_RATE_Step = 4
|
4627
|
+
}KS_AM_PROPERTY_TS_RATE_CHANGE;
|
4628
|
+
|
4629
|
+
typedef struct
|
4630
|
+
{
|
4631
|
+
REFERENCE_TIME StartTime;
|
4632
|
+
LONG Rate;
|
4633
|
+
}KS_AM_SimpleRateChange, * PKS_AM_SimpleRateChange;
|
4634
|
+
|
4635
|
+
typedef struct
|
4636
|
+
{
|
4637
|
+
REFERENCE_TIME OutputZeroTime;
|
4638
|
+
LONG Rate;
|
4639
|
+
}KS_AM_ExactRateChange, * PKS_AM_ExactRateChange;
|
4640
|
+
|
4641
|
+
typedef LONG KS_AM_MaxFullDataRate;
|
4642
|
+
typedef DWORD KS_AM_Step;
|
4643
|
+
|
4644
|
+
# define STATIC_KSCATEGORY_ENCODER \
|
4645
|
+
0x19689bf6, 0xc384, 0x48fd, 0xad, 0x51, 0x90, 0xe5, 0x8c, 0x79, 0xf7, 0xb
|
4646
|
+
DEFINE_GUIDSTRUCT("19689BF6-C384-48fd-AD51-90E58C79F70B", KSCATEGORY_ENCODER);
|
4647
|
+
# define KSCATEGORY_ENCODER DEFINE_GUIDNAMED(KSCATEGORY_ENCODER)
|
4648
|
+
|
4649
|
+
# define STATIC_KSCATEGORY_MULTIPLEXER \
|
4650
|
+
0x7a5de1d3, 0x1a1, 0x452c, 0xb4, 0x81, 0x4f, 0xa2, 0xb9, 0x62, 0x71, 0xe8
|
4651
|
+
DEFINE_GUIDSTRUCT("7A5DE1D3-01A1-452c-B481-4FA2B96271E8", KSCATEGORY_MULTIPLEXER);
|
4652
|
+
# define KSCATEGORY_MULTIPLEXER DEFINE_GUIDNAMED(KSCATEGORY_MULTIPLEXER)
|
4653
|
+
|
4654
|
+
# ifndef __ENCODER_API_GUIDS__
|
4655
|
+
# define __ENCODER_API_GUIDS__
|
4656
|
+
|
4657
|
+
# define STATIC_ENCAPIPARAM_BITRATE \
|
4658
|
+
0x49cc4c43, 0xca83, 0x4ad4, 0xa9, 0xaf, 0xf3, 0x69, 0x6a, 0xf6, 0x66, 0xdf
|
4659
|
+
DEFINE_GUIDSTRUCT("49CC4C43-CA83-4ad4-A9AF-F3696AF666DF", ENCAPIPARAM_BITRATE);
|
4660
|
+
# define ENCAPIPARAM_BITRATE DEFINE_GUIDNAMED(ENCAPIPARAM_BITRATE)
|
4661
|
+
|
4662
|
+
# define STATIC_ENCAPIPARAM_PEAK_BITRATE \
|
4663
|
+
0x703f16a9, 0x3d48, 0x44a1, 0xb0, 0x77, 0x1, 0x8d, 0xff, 0x91, 0x5d, 0x19
|
4664
|
+
DEFINE_GUIDSTRUCT("703F16A9-3D48-44a1-B077-018DFF915D19", ENCAPIPARAM_PEAK_BITRATE);
|
4665
|
+
# define ENCAPIPARAM_PEAK_BITRATE DEFINE_GUIDNAMED(ENCAPIPARAM_PEAK_BITRATE)
|
4666
|
+
|
4667
|
+
# define STATIC_ENCAPIPARAM_BITRATE_MODE \
|
4668
|
+
0xee5fb25c, 0xc713, 0x40d1, 0x9d, 0x58, 0xc0, 0xd7, 0x24, 0x1e, 0x25, 0xf
|
4669
|
+
DEFINE_GUIDSTRUCT("EE5FB25C-C713-40d1-9D58-C0D7241E250F", ENCAPIPARAM_BITRATE_MODE);
|
4670
|
+
# define ENCAPIPARAM_BITRATE_MODE DEFINE_GUIDNAMED(ENCAPIPARAM_BITRATE_MODE)
|
4671
|
+
|
4672
|
+
# define STATIC_CODECAPI_CHANGELISTS \
|
4673
|
+
0x62b12acf, 0xf6b0, 0x47d9, 0x94, 0x56, 0x96, 0xf2, 0x2c, 0x4e, 0x0b, 0x9d
|
4674
|
+
DEFINE_GUIDSTRUCT("62B12ACF-F6B0-47D9-9456-96F22C4E0B9D", CODECAPI_CHANGELISTS);
|
4675
|
+
# define CODECAPI_CHANGELISTS DEFINE_GUIDNAMED(CODECAPI_CHANGELISTS)
|
4676
|
+
|
4677
|
+
# define STATIC_CODECAPI_VIDEO_ENCODER \
|
4678
|
+
0x7112e8e1, 0x3d03, 0x47ef, 0x8e, 0x60, 0x03, 0xf1, 0xcf, 0x53, 0x73, 0x01
|
4679
|
+
DEFINE_GUIDSTRUCT("7112E8E1-3D03-47EF-8E60-03F1CF537301", CODECAPI_VIDEO_ENCODER);
|
4680
|
+
# define CODECAPI_VIDEO_ENCODER DEFINE_GUIDNAMED(CODECAPI_VIDEO_ENCODER)
|
4681
|
+
|
4682
|
+
# define STATIC_CODECAPI_AUDIO_ENCODER \
|
4683
|
+
0xb9d19a3e, 0xf897, 0x429c, 0xbc, 0x46, 0x81, 0x38, 0xb7, 0x27, 0x2b, 0x2d
|
4684
|
+
DEFINE_GUIDSTRUCT("B9D19A3E-F897-429C-BC46-8138B7272B2D", CODECAPI_AUDIO_ENCODER);
|
4685
|
+
# define CODECAPI_AUDIO_ENCODER DEFINE_GUIDNAMED(CODECAPI_AUDIO_ENCODER)
|
4686
|
+
|
4687
|
+
# define STATIC_CODECAPI_SETALLDEFAULTS \
|
4688
|
+
0x6c5e6a7c, 0xacf8, 0x4f55, 0xa9, 0x99, 0x1a, 0x62, 0x81, 0x09, 0x05, 0x1b
|
4689
|
+
DEFINE_GUIDSTRUCT("6C5E6A7C-ACF8-4F55-A999-1A628109051B", CODECAPI_SETALLDEFAULTS);
|
4690
|
+
# define CODECAPI_SETALLDEFAULTS DEFINE_GUIDNAMED(CODECAPI_SETALLDEFAULTS)
|
4691
|
+
|
4692
|
+
# define STATIC_CODECAPI_ALLSETTINGS \
|
4693
|
+
0x6a577e92, 0x83e1, 0x4113, 0xad, 0xc2, 0x4f, 0xce, 0xc3, 0x2f, 0x83, 0xa1
|
4694
|
+
DEFINE_GUIDSTRUCT("6A577E92-83E1-4113-ADC2-4FCEC32F83A1", CODECAPI_ALLSETTINGS);
|
4695
|
+
# define CODECAPI_ALLSETTINGS DEFINE_GUIDNAMED(CODECAPI_ALLSETTINGS)
|
4696
|
+
|
4697
|
+
# define STATIC_CODECAPI_SUPPORTSEVENTS \
|
4698
|
+
0x0581af97, 0x7693, 0x4dbd, 0x9d, 0xca, 0x3f, 0x9e, 0xbd, 0x65, 0x85, 0xa1
|
4699
|
+
DEFINE_GUIDSTRUCT("0581AF97-7693-4DBD-9DCA-3F9EBD6585A1", CODECAPI_SUPPORTSEVENTS);
|
4700
|
+
# define CODECAPI_SUPPORTSEVENTS DEFINE_GUIDNAMED(CODECAPI_SUPPORTSEVENTS)
|
4701
|
+
|
4702
|
+
# define STATIC_CODECAPI_CURRENTCHANGELIST \
|
4703
|
+
0x1cb14e83, 0x7d72, 0x4657, 0x83, 0xfd, 0x47, 0xa2, 0xc5, 0xb9, 0xd1, 0x3d
|
4704
|
+
DEFINE_GUIDSTRUCT("1CB14E83-7D72-4657-83FD-47A2C5B9D13D", CODECAPI_CURRENTCHANGELIST);
|
4705
|
+
# define CODECAPI_CURRENTCHANGELIST DEFINE_GUIDNAMED(CODECAPI_CURRENTCHANGELIST)
|
4706
|
+
# endif /* __ENCODER_API_GUIDS__ */
|
4707
|
+
|
4708
|
+
# ifndef __ENCODER_API_DEFINES__
|
4709
|
+
# define __ENCODER_API_DEFINES__
|
4710
|
+
typedef enum
|
4711
|
+
{
|
4712
|
+
ConstantBitRate = 0,
|
4713
|
+
VariableBitRateAverage,
|
4714
|
+
VariableBitRatePeak
|
4715
|
+
}VIDEOENCODER_BITRATE_MODE;
|
4716
|
+
# endif /* __ENCODER_API_DEFINES__ */
|
4717
|
+
|
4718
|
+
# define STATIC_KSPROPSETID_Jack \
|
4719
|
+
0x4509f757, 0x2d46, 0x4637, 0x8e, 0x62, 0xce, 0x7d, 0xb9, 0x44, 0xf5, 0x7b
|
4720
|
+
DEFINE_GUIDSTRUCT("4509F757-2D46-4637-8E62-CE7DB944F57B", KSPROPSETID_Jack);
|
4721
|
+
# define KSPROPSETID_Jack DEFINE_GUIDNAMED(KSPROPSETID_Jack)
|
4722
|
+
|
4723
|
+
typedef enum
|
4724
|
+
{
|
4725
|
+
KSPROPERTY_JACK_DESCRIPTION = 1,
|
4726
|
+
KSPROPERTY_JACK_DESCRIPTION2,
|
4727
|
+
KSPROPERTY_JACK_SINK_INFO
|
4728
|
+
}KSPROPERTY_JACK;
|
4729
|
+
|
4730
|
+
typedef enum
|
4731
|
+
{
|
4732
|
+
eConnTypeUnknown,
|
4733
|
+
eConnType3Point5mm,
|
4734
|
+
eConnTypeQuarter,
|
4735
|
+
eConnTypeAtapiInternal,
|
4736
|
+
eConnTypeRCA,
|
4737
|
+
eConnTypeOptical,
|
4738
|
+
eConnTypeOtherDigital,
|
4739
|
+
eConnTypeOtherAnalog,
|
4740
|
+
eConnTypeMultichannelAnalogDIN,
|
4741
|
+
eConnTypeXlrProfessional,
|
4742
|
+
eConnTypeRJ11Modem,
|
4743
|
+
eConnTypeCombination
|
4744
|
+
}EPcxConnectionType;
|
4745
|
+
|
4746
|
+
typedef enum
|
4747
|
+
{
|
4748
|
+
eGeoLocRear = 0x1,
|
4749
|
+
eGeoLocFront,
|
4750
|
+
eGeoLocLeft,
|
4751
|
+
eGeoLocRight,
|
4752
|
+
eGeoLocTop,
|
4753
|
+
eGeoLocBottom,
|
4754
|
+
eGeoLocRearPanel,
|
4755
|
+
eGeoLocRiser,
|
4756
|
+
eGeoLocInsideMobileLid,
|
4757
|
+
eGeoLocDrivebay,
|
4758
|
+
eGeoLocHDMI,
|
4759
|
+
eGeoLocOutsideMobileLid,
|
4760
|
+
eGeoLocATAPI,
|
4761
|
+
eGeoLocReserved5,
|
4762
|
+
eGeoLocReserved6,
|
4763
|
+
EPcxGeoLocation_enum_count
|
4764
|
+
}EPcxGeoLocation;
|
4765
|
+
|
4766
|
+
typedef enum
|
4767
|
+
{
|
4768
|
+
eGenLocPrimaryBox = 0,
|
4769
|
+
eGenLocInternal,
|
4770
|
+
eGenLocSeparate,
|
4771
|
+
eGenLocOther,
|
4772
|
+
EPcxGenLocation_enum_count
|
4773
|
+
}EPcxGenLocation;
|
4774
|
+
|
4775
|
+
typedef enum
|
4776
|
+
{
|
4777
|
+
ePortConnJack = 0,
|
4778
|
+
ePortConnIntegratedDevice,
|
4779
|
+
ePortConnBothIntegratedAndJack,
|
4780
|
+
ePortConnUnknown
|
4781
|
+
}EPxcPortConnection;
|
4782
|
+
|
4783
|
+
typedef struct
|
4784
|
+
{
|
4785
|
+
DWORD ChannelMapping;
|
4786
|
+
COLORREF Color;
|
4787
|
+
EPcxConnectionType ConnectionType;
|
4788
|
+
EPcxGeoLocation GeoLocation;
|
4789
|
+
EPcxGenLocation GenLocation;
|
4790
|
+
EPxcPortConnection PortConnection;
|
4791
|
+
BOOL IsConnected;
|
4792
|
+
}KSJACK_DESCRIPTION, * PKSJACK_DESCRIPTION;
|
4793
|
+
|
4794
|
+
typedef enum
|
4795
|
+
{
|
4796
|
+
KSJACK_SINK_CONNECTIONTYPE_HDMI = 0,
|
4797
|
+
KSJACK_SINK_CONNECTIONTYPE_DISPLAYPORT,
|
4798
|
+
}KSJACK_SINK_CONNECTIONTYPE;
|
4799
|
+
|
4800
|
+
# define MAX_SINK_DESCRIPTION_NAME_LENGTH 32
|
4801
|
+
typedef struct _tagKSJACK_SINK_INFORMATION
|
4802
|
+
{
|
4803
|
+
KSJACK_SINK_CONNECTIONTYPE ConnType;
|
4804
|
+
WORD ManufacturerId;
|
4805
|
+
WORD ProductId;
|
4806
|
+
WORD AudioLatency;
|
4807
|
+
BOOL HDCPCapable;
|
4808
|
+
BOOL AICapable;
|
4809
|
+
UCHAR SinkDescriptionLength;
|
4810
|
+
WCHAR SinkDescription[MAX_SINK_DESCRIPTION_NAME_LENGTH];
|
4811
|
+
LUID PortId;
|
4812
|
+
}KSJACK_SINK_INFORMATION, * PKSJACK_SINK_INFORMATION;
|
4813
|
+
|
4814
|
+
# define JACKDESC2_PRESENCE_DETECT_CAPABILITY 0x00000001
|
4815
|
+
# define JACKDESC2_DYNAMIC_FORMAT_CHANGE_CAPABILITY 0x00000002
|
4816
|
+
|
4817
|
+
typedef struct _tagKSJACK_DESCRIPTION2
|
4818
|
+
{
|
4819
|
+
DWORD DeviceStateInfo;
|
4820
|
+
DWORD JackCapabilities;
|
4821
|
+
}KSJACK_DESCRIPTION2, * PKSJACK_DESCRIPTION2;
|
4822
|
+
|
4823
|
+
#endif /* _KSMEDIA_ */
|
4824
|
+
|