1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[cfg(feature = "Win32_Media_Audio")]
4 #[cfg(feature = "Win32_Media_DeviceManager")]
6 #[cfg(feature = "Win32_Media_DirectShow")]
8 #[cfg(feature = "Win32_Media_DxMediaObjects")]
9 pub mod DxMediaObjects
;
10 #[cfg(feature = "Win32_Media_KernelStreaming")]
11 pub mod KernelStreaming
;
12 #[cfg(feature = "Win32_Media_LibrarySharingServices")]
13 pub mod LibrarySharingServices
;
14 #[cfg(feature = "Win32_Media_MediaFoundation")]
15 pub mod MediaFoundation
;
16 #[cfg(feature = "Win32_Media_MediaPlayer")]
18 #[cfg(feature = "Win32_Media_Multimedia")]
20 #[cfg(feature = "Win32_Media_PictureAcquisition")]
21 pub mod PictureAcquisition
;
22 #[cfg(feature = "Win32_Media_Speech")]
24 #[cfg(feature = "Win32_Media_Streaming")]
26 #[cfg(feature = "Win32_Media_WindowsMediaFormat")]
27 pub mod WindowsMediaFormat
;
28 #[link(name = "windows")]
30 #[doc = "*Required features: 'Win32_Media'*"]
31 pub fn timeBeginPeriod(uperiod
: u32) -> u32;
32 #[doc = "*Required features: 'Win32_Media'*"]
33 pub fn timeEndPeriod(uperiod
: u32) -> u32;
34 #[doc = "*Required features: 'Win32_Media'*"]
35 pub fn timeGetDevCaps(ptc
: *mut TIMECAPS
, cbtc
: u32) -> u32;
36 #[doc = "*Required features: 'Win32_Media'*"]
37 pub fn timeGetSystemTime(pmmt
: *mut MMTIME
, cbmmt
: u32) -> u32;
38 #[doc = "*Required features: 'Win32_Media'*"]
39 pub fn timeGetTime() -> u32;
40 #[doc = "*Required features: 'Win32_Media'*"]
41 pub fn timeKillEvent(utimerid
: u32) -> u32;
42 #[doc = "*Required features: 'Win32_Media'*"]
43 pub fn timeSetEvent(udelay
: u32, uresolution
: u32, fptc
: LPTIMECALLBACK
, dwuser
: usize, fuevent
: u32) -> u32;
45 pub type HTASK
= isize;
46 pub type IReferenceClock
= *mut ::core
::ffi
::c_void
;
47 pub type IReferenceClock2
= *mut ::core
::ffi
::c_void
;
48 pub type IReferenceClockTimerControl
= *mut ::core
::ffi
::c_void
;
49 #[doc = "*Required features: 'Win32_Media'*"]
50 pub const JOYERR_BASE
: u32 = 160u32;
51 #[doc = "*Required features: 'Win32_Media', 'Win32_Media_Multimedia'*"]
52 #[cfg(feature = "Win32_Media_Multimedia")]
53 pub type LPDRVCALLBACK
= ::core
::option
::Option
<unsafe extern "system" fn(hdrvr
: Multimedia
::HDRVR
, umsg
: u32, dwuser
: usize, dw1
: usize, dw2
: usize)>;
54 #[doc = "*Required features: 'Win32_Media'*"]
55 pub type LPTIMECALLBACK
= ::core
::option
::Option
<unsafe extern "system" fn(utimerid
: u32, umsg
: u32, dwuser
: usize, dw1
: usize, dw2
: usize)>;
56 #[doc = "*Required features: 'Win32_Media'*"]
57 pub const MAXERRORLENGTH
: u32 = 256u32;
58 #[doc = "*Required features: 'Win32_Media'*"]
59 pub const MAXPNAMELEN
: u32 = 32u32;
60 #[doc = "*Required features: 'Win32_Media'*"]
61 pub const MCIERR_BASE
: u32 = 256u32;
62 #[doc = "*Required features: 'Win32_Media'*"]
63 pub const MCI_CD_OFFSET
: u32 = 1088u32;
64 #[doc = "*Required features: 'Win32_Media'*"]
65 pub const MCI_SEQ_OFFSET
: u32 = 1216u32;
66 #[doc = "*Required features: 'Win32_Media'*"]
67 pub const MCI_STRING_OFFSET
: u32 = 512u32;
68 #[doc = "*Required features: 'Win32_Media'*"]
69 pub const MCI_VD_OFFSET
: u32 = 1024u32;
70 #[doc = "*Required features: 'Win32_Media'*"]
71 pub const MCI_WAVE_OFFSET
: u32 = 1152u32;
72 #[doc = "*Required features: 'Win32_Media'*"]
73 pub const MIDIERR_BASE
: u32 = 64u32;
74 #[doc = "*Required features: 'Win32_Media'*"]
75 pub const MIXERR_BASE
: u32 = 1024u32;
76 #[doc = "*Required features: 'Win32_Media'*"]
77 pub const MMSYSERR_ALLOCATED
: u32 = 4u32;
78 #[doc = "*Required features: 'Win32_Media'*"]
79 pub const MMSYSERR_BADDB
: u32 = 14u32;
80 #[doc = "*Required features: 'Win32_Media'*"]
81 pub const MMSYSERR_BADDEVICEID
: u32 = 2u32;
82 #[doc = "*Required features: 'Win32_Media'*"]
83 pub const MMSYSERR_BADERRNUM
: u32 = 9u32;
84 #[doc = "*Required features: 'Win32_Media'*"]
85 pub const MMSYSERR_BASE
: u32 = 0u32;
86 #[doc = "*Required features: 'Win32_Media'*"]
87 pub const MMSYSERR_DELETEERROR
: u32 = 18u32;
88 #[doc = "*Required features: 'Win32_Media'*"]
89 pub const MMSYSERR_ERROR
: u32 = 1u32;
90 #[doc = "*Required features: 'Win32_Media'*"]
91 pub const MMSYSERR_HANDLEBUSY
: u32 = 12u32;
92 #[doc = "*Required features: 'Win32_Media'*"]
93 pub const MMSYSERR_INVALFLAG
: u32 = 10u32;
94 #[doc = "*Required features: 'Win32_Media'*"]
95 pub const MMSYSERR_INVALHANDLE
: u32 = 5u32;
96 #[doc = "*Required features: 'Win32_Media'*"]
97 pub const MMSYSERR_INVALIDALIAS
: u32 = 13u32;
98 #[doc = "*Required features: 'Win32_Media'*"]
99 pub const MMSYSERR_INVALPARAM
: u32 = 11u32;
100 #[doc = "*Required features: 'Win32_Media'*"]
101 pub const MMSYSERR_KEYNOTFOUND
: u32 = 15u32;
102 #[doc = "*Required features: 'Win32_Media'*"]
103 pub const MMSYSERR_LASTERROR
: u32 = 21u32;
104 #[doc = "*Required features: 'Win32_Media'*"]
105 pub const MMSYSERR_MOREDATA
: u32 = 21u32;
106 #[doc = "*Required features: 'Win32_Media'*"]
107 pub const MMSYSERR_NODRIVER
: u32 = 6u32;
108 #[doc = "*Required features: 'Win32_Media'*"]
109 pub const MMSYSERR_NODRIVERCB
: u32 = 20u32;
110 #[doc = "*Required features: 'Win32_Media'*"]
111 pub const MMSYSERR_NOERROR
: u32 = 0u32;
112 #[doc = "*Required features: 'Win32_Media'*"]
113 pub const MMSYSERR_NOMEM
: u32 = 7u32;
114 #[doc = "*Required features: 'Win32_Media'*"]
115 pub const MMSYSERR_NOTENABLED
: u32 = 3u32;
116 #[doc = "*Required features: 'Win32_Media'*"]
117 pub const MMSYSERR_NOTSUPPORTED
: u32 = 8u32;
118 #[doc = "*Required features: 'Win32_Media'*"]
119 pub const MMSYSERR_READERROR
: u32 = 16u32;
120 #[doc = "*Required features: 'Win32_Media'*"]
121 pub const MMSYSERR_VALNOTFOUND
: u32 = 19u32;
122 #[doc = "*Required features: 'Win32_Media'*"]
123 pub const MMSYSERR_WRITEERROR
: u32 = 17u32;
124 #[repr(C, packed(1))]
125 #[doc = "*Required features: 'Win32_Media'*"]
130 impl ::core
::marker
::Copy
for MMTIME {}
131 impl ::core
::clone
::Clone
for MMTIME
{
132 fn clone(&self) -> Self {
136 #[repr(C, packed(1))]
137 #[doc = "*Required features: 'Win32_Media'*"]
143 pub smpte
: MMTIME_0_1
,
144 pub midi
: MMTIME_0_0
,
146 impl ::core
::marker
::Copy
for MMTIME_0 {}
147 impl ::core
::clone
::Clone
for MMTIME_0
{
148 fn clone(&self) -> Self {
152 #[repr(C, packed(1))]
153 #[doc = "*Required features: 'Win32_Media'*"]
154 pub struct MMTIME_0_0
{
157 impl ::core
::marker
::Copy
for MMTIME_0_0 {}
158 impl ::core
::clone
::Clone
for MMTIME_0_0
{
159 fn clone(&self) -> Self {
164 #[doc = "*Required features: 'Win32_Media'*"]
165 pub struct MMTIME_0_1
{
174 impl ::core
::marker
::Copy
for MMTIME_0_1 {}
175 impl ::core
::clone
::Clone
for MMTIME_0_1
{
176 fn clone(&self) -> Self {
180 #[doc = "*Required features: 'Win32_Media'*"]
181 pub const MM_ADLIB
: u32 = 9u32;
182 #[doc = "*Required features: 'Win32_Media'*"]
183 pub const MM_DRVM_CLOSE
: u32 = 977u32;
184 #[doc = "*Required features: 'Win32_Media'*"]
185 pub const MM_DRVM_DATA
: u32 = 978u32;
186 #[doc = "*Required features: 'Win32_Media'*"]
187 pub const MM_DRVM_ERROR
: u32 = 979u32;
188 #[doc = "*Required features: 'Win32_Media'*"]
189 pub const MM_DRVM_OPEN
: u32 = 976u32;
190 #[doc = "*Required features: 'Win32_Media'*"]
191 pub const MM_JOY1BUTTONDOWN
: u32 = 949u32;
192 #[doc = "*Required features: 'Win32_Media'*"]
193 pub const MM_JOY1BUTTONUP
: u32 = 951u32;
194 #[doc = "*Required features: 'Win32_Media'*"]
195 pub const MM_JOY1MOVE
: u32 = 928u32;
196 #[doc = "*Required features: 'Win32_Media'*"]
197 pub const MM_JOY1ZMOVE
: u32 = 930u32;
198 #[doc = "*Required features: 'Win32_Media'*"]
199 pub const MM_JOY2BUTTONDOWN
: u32 = 950u32;
200 #[doc = "*Required features: 'Win32_Media'*"]
201 pub const MM_JOY2BUTTONUP
: u32 = 952u32;
202 #[doc = "*Required features: 'Win32_Media'*"]
203 pub const MM_JOY2MOVE
: u32 = 929u32;
204 #[doc = "*Required features: 'Win32_Media'*"]
205 pub const MM_JOY2ZMOVE
: u32 = 931u32;
206 #[doc = "*Required features: 'Win32_Media'*"]
207 pub const MM_MCINOTIFY
: u32 = 953u32;
208 #[doc = "*Required features: 'Win32_Media'*"]
209 pub const MM_MCISIGNAL
: u32 = 971u32;
210 #[doc = "*Required features: 'Win32_Media'*"]
211 pub const MM_MICROSOFT
: u32 = 1u32;
212 #[doc = "*Required features: 'Win32_Media'*"]
213 pub const MM_MIDI_MAPPER
: u32 = 1u32;
214 #[doc = "*Required features: 'Win32_Media'*"]
215 pub const MM_MIM_CLOSE
: u32 = 962u32;
216 #[doc = "*Required features: 'Win32_Media'*"]
217 pub const MM_MIM_DATA
: u32 = 963u32;
218 #[doc = "*Required features: 'Win32_Media'*"]
219 pub const MM_MIM_ERROR
: u32 = 965u32;
220 #[doc = "*Required features: 'Win32_Media'*"]
221 pub const MM_MIM_LONGDATA
: u32 = 964u32;
222 #[doc = "*Required features: 'Win32_Media'*"]
223 pub const MM_MIM_LONGERROR
: u32 = 966u32;
224 #[doc = "*Required features: 'Win32_Media'*"]
225 pub const MM_MIM_MOREDATA
: u32 = 972u32;
226 #[doc = "*Required features: 'Win32_Media'*"]
227 pub const MM_MIM_OPEN
: u32 = 961u32;
228 #[doc = "*Required features: 'Win32_Media'*"]
229 pub const MM_MIXM_CONTROL_CHANGE
: u32 = 977u32;
230 #[doc = "*Required features: 'Win32_Media'*"]
231 pub const MM_MIXM_LINE_CHANGE
: u32 = 976u32;
232 #[doc = "*Required features: 'Win32_Media'*"]
233 pub const MM_MOM_CLOSE
: u32 = 968u32;
234 #[doc = "*Required features: 'Win32_Media'*"]
235 pub const MM_MOM_DONE
: u32 = 969u32;
236 #[doc = "*Required features: 'Win32_Media'*"]
237 pub const MM_MOM_OPEN
: u32 = 967u32;
238 #[doc = "*Required features: 'Win32_Media'*"]
239 pub const MM_MOM_POSITIONCB
: u32 = 970u32;
240 #[doc = "*Required features: 'Win32_Media'*"]
241 pub const MM_MPU401_MIDIIN
: u32 = 11u32;
242 #[doc = "*Required features: 'Win32_Media'*"]
243 pub const MM_MPU401_MIDIOUT
: u32 = 10u32;
244 #[doc = "*Required features: 'Win32_Media'*"]
245 pub const MM_PC_JOYSTICK
: u32 = 12u32;
246 #[doc = "*Required features: 'Win32_Media'*"]
247 pub const MM_SNDBLST_MIDIIN
: u32 = 4u32;
248 #[doc = "*Required features: 'Win32_Media'*"]
249 pub const MM_SNDBLST_MIDIOUT
: u32 = 3u32;
250 #[doc = "*Required features: 'Win32_Media'*"]
251 pub const MM_SNDBLST_SYNTH
: u32 = 5u32;
252 #[doc = "*Required features: 'Win32_Media'*"]
253 pub const MM_SNDBLST_WAVEIN
: u32 = 7u32;
254 #[doc = "*Required features: 'Win32_Media'*"]
255 pub const MM_SNDBLST_WAVEOUT
: u32 = 6u32;
256 #[doc = "*Required features: 'Win32_Media'*"]
257 pub const MM_STREAM_CLOSE
: u32 = 981u32;
258 #[doc = "*Required features: 'Win32_Media'*"]
259 pub const MM_STREAM_DONE
: u32 = 982u32;
260 #[doc = "*Required features: 'Win32_Media'*"]
261 pub const MM_STREAM_ERROR
: u32 = 983u32;
262 #[doc = "*Required features: 'Win32_Media'*"]
263 pub const MM_STREAM_OPEN
: u32 = 980u32;
264 #[doc = "*Required features: 'Win32_Media'*"]
265 pub const MM_WAVE_MAPPER
: u32 = 2u32;
266 #[doc = "*Required features: 'Win32_Media'*"]
267 pub const MM_WIM_CLOSE
: u32 = 959u32;
268 #[doc = "*Required features: 'Win32_Media'*"]
269 pub const MM_WIM_DATA
: u32 = 960u32;
270 #[doc = "*Required features: 'Win32_Media'*"]
271 pub const MM_WIM_OPEN
: u32 = 958u32;
272 #[doc = "*Required features: 'Win32_Media'*"]
273 pub const MM_WOM_CLOSE
: u32 = 956u32;
274 #[doc = "*Required features: 'Win32_Media'*"]
275 pub const MM_WOM_DONE
: u32 = 957u32;
276 #[doc = "*Required features: 'Win32_Media'*"]
277 pub const MM_WOM_OPEN
: u32 = 955u32;
279 #[doc = "*Required features: 'Win32_Media'*"]
280 pub struct TIMECAPS
{
284 impl ::core
::marker
::Copy
for TIMECAPS {}
285 impl ::core
::clone
::Clone
for TIMECAPS
{
286 fn clone(&self) -> Self {
291 #[doc = "*Required features: 'Win32_Media'*"]
293 pub Anonymous
: TIMECODE_0
,
296 impl ::core
::marker
::Copy
for TIMECODE {}
297 impl ::core
::clone
::Clone
for TIMECODE
{
298 fn clone(&self) -> Self {
303 #[doc = "*Required features: 'Win32_Media'*"]
304 pub struct TIMECODE_0
{
306 pub wFrameFract
: u16,
309 impl ::core
::marker
::Copy
for TIMECODE_0 {}
310 impl ::core
::clone
::Clone
for TIMECODE_0
{
311 fn clone(&self) -> Self {
316 #[doc = "*Required features: 'Win32_Media'*"]
317 pub struct TIMECODE_SAMPLE
{
319 pub timecode
: TIMECODE
,
321 pub dwFlags
: TIMECODE_SAMPLE_FLAGS
,
323 impl ::core
::marker
::Copy
for TIMECODE_SAMPLE {}
324 impl ::core
::clone
::Clone
for TIMECODE_SAMPLE
{
325 fn clone(&self) -> Self {
329 #[doc = "*Required features: 'Win32_Media'*"]
330 pub type TIMECODE_SAMPLE_FLAGS
= u32;
331 #[doc = "*Required features: 'Win32_Media'*"]
332 pub const ED_DEVCAP_TIMECODE_READ
: TIMECODE_SAMPLE_FLAGS
= 4121u32;
333 #[doc = "*Required features: 'Win32_Media'*"]
334 pub const ED_DEVCAP_ATN_READ
: TIMECODE_SAMPLE_FLAGS
= 5047u32;
335 #[doc = "*Required features: 'Win32_Media'*"]
336 pub const ED_DEVCAP_RTC_READ
: TIMECODE_SAMPLE_FLAGS
= 5050u32;
337 #[doc = "*Required features: 'Win32_Media'*"]
338 pub const TIMERR_BASE
: u32 = 96u32;
339 #[doc = "*Required features: 'Win32_Media'*"]
340 pub const TIMERR_NOCANDO
: u32 = 97u32;
341 #[doc = "*Required features: 'Win32_Media'*"]
342 pub const TIMERR_NOERROR
: u32 = 0u32;
343 #[doc = "*Required features: 'Win32_Media'*"]
344 pub const TIMERR_STRUCT
: u32 = 129u32;
345 #[doc = "*Required features: 'Win32_Media'*"]
346 pub const TIME_BYTES
: u32 = 4u32;
347 #[doc = "*Required features: 'Win32_Media'*"]
348 pub const TIME_CALLBACK_EVENT_PULSE
: u32 = 32u32;
349 #[doc = "*Required features: 'Win32_Media'*"]
350 pub const TIME_CALLBACK_EVENT_SET
: u32 = 16u32;
351 #[doc = "*Required features: 'Win32_Media'*"]
352 pub const TIME_CALLBACK_FUNCTION
: u32 = 0u32;
353 #[doc = "*Required features: 'Win32_Media'*"]
354 pub const TIME_KILL_SYNCHRONOUS
: u32 = 256u32;
355 #[doc = "*Required features: 'Win32_Media'*"]
356 pub const TIME_MIDI
: u32 = 16u32;
357 #[doc = "*Required features: 'Win32_Media'*"]
358 pub const TIME_MS
: u32 = 1u32;
359 #[doc = "*Required features: 'Win32_Media'*"]
360 pub const TIME_ONESHOT
: u32 = 0u32;
361 #[doc = "*Required features: 'Win32_Media'*"]
362 pub const TIME_PERIODIC
: u32 = 1u32;
363 #[doc = "*Required features: 'Win32_Media'*"]
364 pub const TIME_SAMPLES
: u32 = 2u32;
365 #[doc = "*Required features: 'Win32_Media'*"]
366 pub const TIME_SMPTE
: u32 = 8u32;
367 #[doc = "*Required features: 'Win32_Media'*"]
368 pub const TIME_TICKS
: u32 = 32u32;
369 #[doc = "*Required features: 'Win32_Media'*"]
370 pub const WAVERR_BASE
: u32 = 32u32;