]> git.proxmox.com Git - rustc.git/blob - vendor/windows-sys/src/Windows/Win32/Media/DxMediaObjects/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / Media / DxMediaObjects / mod.rs
1 #[link(name = "windows")]
2 extern "system" {
3 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
4 pub fn DMOEnum(guidcategory: *const ::windows_sys::core::GUID, dwflags: u32, cintypes: u32, pintypes: *const DMO_PARTIAL_MEDIATYPE, couttypes: u32, pouttypes: *const DMO_PARTIAL_MEDIATYPE, ppenum: *mut IEnumDMO) -> ::windows_sys::core::HRESULT;
5 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
6 pub fn DMOGetName(clsiddmo: *const ::windows_sys::core::GUID, szname: ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
7 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
8 pub fn DMOGetTypes(clsiddmo: *const ::windows_sys::core::GUID, ulinputtypesrequested: u32, pulinputtypessupplied: *mut u32, pinputtypes: *mut DMO_PARTIAL_MEDIATYPE, uloutputtypesrequested: u32, puloutputtypessupplied: *mut u32, poutputtypes: *mut DMO_PARTIAL_MEDIATYPE) -> ::windows_sys::core::HRESULT;
9 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
10 pub fn DMORegister(szname: ::windows_sys::core::PCWSTR, clsiddmo: *const ::windows_sys::core::GUID, guidcategory: *const ::windows_sys::core::GUID, dwflags: u32, cintypes: u32, pintypes: *const DMO_PARTIAL_MEDIATYPE, couttypes: u32, pouttypes: *const DMO_PARTIAL_MEDIATYPE) -> ::windows_sys::core::HRESULT;
11 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
12 pub fn DMOUnregister(clsiddmo: *const ::windows_sys::core::GUID, guidcategory: *const ::windows_sys::core::GUID) -> ::windows_sys::core::HRESULT;
13 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
14 #[cfg(feature = "Win32_Foundation")]
15 pub fn MoCopyMediaType(pmtdest: *mut DMO_MEDIA_TYPE, pmtsrc: *const DMO_MEDIA_TYPE) -> ::windows_sys::core::HRESULT;
16 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
17 #[cfg(feature = "Win32_Foundation")]
18 pub fn MoCreateMediaType(ppmt: *mut *mut DMO_MEDIA_TYPE, cbformat: u32) -> ::windows_sys::core::HRESULT;
19 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
20 #[cfg(feature = "Win32_Foundation")]
21 pub fn MoDeleteMediaType(pmt: *mut DMO_MEDIA_TYPE) -> ::windows_sys::core::HRESULT;
22 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
23 #[cfg(feature = "Win32_Foundation")]
24 pub fn MoDuplicateMediaType(ppmtdest: *mut *mut DMO_MEDIA_TYPE, pmtsrc: *const DMO_MEDIA_TYPE) -> ::windows_sys::core::HRESULT;
25 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
26 #[cfg(feature = "Win32_Foundation")]
27 pub fn MoFreeMediaType(pmt: *mut DMO_MEDIA_TYPE) -> ::windows_sys::core::HRESULT;
28 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
29 #[cfg(feature = "Win32_Foundation")]
30 pub fn MoInitMediaType(pmt: *mut DMO_MEDIA_TYPE, cbformat: u32) -> ::windows_sys::core::HRESULT;
31 }
32 pub const DMOCATEGORY_ACOUSTIC_ECHO_CANCEL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3214294400, data2: 50521, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] };
33 pub const DMOCATEGORY_AGC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3901528992, data2: 50519, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] };
34 pub const DMOCATEGORY_AUDIO_CAPTURE_EFFECT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4133857978, data2: 15881, data3: 18720, data4: [170, 95, 33, 152, 17, 20, 143, 9] };
35 pub const DMOCATEGORY_AUDIO_DECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1475533707, data2: 59067, data3: 17683, data4: [157, 67, 220, 210, 166, 89, 49, 37] };
36 pub const DMOCATEGORY_AUDIO_EFFECT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4083166015, data2: 1426, data3: 18655, data4: [164, 205, 103, 71, 33, 231, 235, 235] };
37 pub const DMOCATEGORY_AUDIO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902177, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] };
38 pub const DMOCATEGORY_AUDIO_NOISE_SUPPRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3766456383, data2: 25341, data3: 20064, data4: [140, 221, 222, 167, 35, 102, 101, 181] };
39 pub const DMOCATEGORY_VIDEO_DECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1248441410, data2: 10430, data3: 18833, data4: [150, 156, 181, 0, 173, 245, 216, 168] };
40 pub const DMOCATEGORY_VIDEO_EFFECT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3650154004, data2: 30572, data3: 18211, data4: [190, 70, 61, 162, 245, 111, 16, 185] };
41 pub const DMOCATEGORY_VIDEO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902176, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] };
42 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
43 pub type DMO_ENUM_FLAGS = i32;
44 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
45 pub const DMO_ENUMF_INCLUDE_KEYED: DMO_ENUM_FLAGS = 1i32;
46 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
47 pub const DMO_E_INVALIDSTREAMINDEX: ::windows_sys::core::HRESULT = -2147220991i32;
48 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
49 pub const DMO_E_INVALIDTYPE: ::windows_sys::core::HRESULT = -2147220990i32;
50 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
51 pub const DMO_E_NOTACCEPTING: ::windows_sys::core::HRESULT = -2147220988i32;
52 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
53 pub const DMO_E_NO_MORE_ITEMS: ::windows_sys::core::HRESULT = -2147220986i32;
54 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
55 pub const DMO_E_TYPE_NOT_ACCEPTED: ::windows_sys::core::HRESULT = -2147220987i32;
56 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
57 pub const DMO_E_TYPE_NOT_SET: ::windows_sys::core::HRESULT = -2147220989i32;
58 #[repr(C)]
59 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`, `\"Win32_Foundation\"`*"]
60 #[cfg(feature = "Win32_Foundation")]
61 pub struct DMO_MEDIA_TYPE {
62 pub majortype: ::windows_sys::core::GUID,
63 pub subtype: ::windows_sys::core::GUID,
64 pub bFixedSizeSamples: super::super::Foundation::BOOL,
65 pub bTemporalCompression: super::super::Foundation::BOOL,
66 pub lSampleSize: u32,
67 pub formattype: ::windows_sys::core::GUID,
68 pub pUnk: ::windows_sys::core::IUnknown,
69 pub cbFormat: u32,
70 pub pbFormat: *mut u8,
71 }
72 #[cfg(feature = "Win32_Foundation")]
73 impl ::core::marker::Copy for DMO_MEDIA_TYPE {}
74 #[cfg(feature = "Win32_Foundation")]
75 impl ::core::clone::Clone for DMO_MEDIA_TYPE {
76 fn clone(&self) -> Self {
77 *self
78 }
79 }
80 #[repr(C)]
81 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
82 pub struct DMO_OUTPUT_DATA_BUFFER {
83 pub pBuffer: IMediaBuffer,
84 pub dwStatus: u32,
85 pub rtTimestamp: i64,
86 pub rtTimelength: i64,
87 }
88 impl ::core::marker::Copy for DMO_OUTPUT_DATA_BUFFER {}
89 impl ::core::clone::Clone for DMO_OUTPUT_DATA_BUFFER {
90 fn clone(&self) -> Self {
91 *self
92 }
93 }
94 #[repr(C)]
95 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
96 pub struct DMO_PARTIAL_MEDIATYPE {
97 pub r#type: ::windows_sys::core::GUID,
98 pub subtype: ::windows_sys::core::GUID,
99 }
100 impl ::core::marker::Copy for DMO_PARTIAL_MEDIATYPE {}
101 impl ::core::clone::Clone for DMO_PARTIAL_MEDIATYPE {
102 fn clone(&self) -> Self {
103 *self
104 }
105 }
106 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
107 pub type DMO_REGISTER_FLAGS = i32;
108 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
109 pub const DMO_REGISTERF_IS_KEYED: DMO_REGISTER_FLAGS = 1i32;
110 pub type IDMOQualityControl = *mut ::core::ffi::c_void;
111 pub type IDMOVideoOutputOptimizations = *mut ::core::ffi::c_void;
112 pub type IEnumDMO = *mut ::core::ffi::c_void;
113 pub type IMediaBuffer = *mut ::core::ffi::c_void;
114 pub type IMediaObject = *mut ::core::ffi::c_void;
115 pub type IMediaObjectInPlace = *mut ::core::ffi::c_void;
116 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
117 pub type _DMO_INPLACE_PROCESS_FLAGS = i32;
118 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
119 pub const DMO_INPLACE_NORMAL: _DMO_INPLACE_PROCESS_FLAGS = 0i32;
120 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
121 pub const DMO_INPLACE_ZERO: _DMO_INPLACE_PROCESS_FLAGS = 1i32;
122 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
123 pub type _DMO_INPUT_DATA_BUFFER_FLAGS = i32;
124 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
125 pub const DMO_INPUT_DATA_BUFFERF_SYNCPOINT: _DMO_INPUT_DATA_BUFFER_FLAGS = 1i32;
126 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
127 pub const DMO_INPUT_DATA_BUFFERF_TIME: _DMO_INPUT_DATA_BUFFER_FLAGS = 2i32;
128 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
129 pub const DMO_INPUT_DATA_BUFFERF_TIMELENGTH: _DMO_INPUT_DATA_BUFFER_FLAGS = 4i32;
130 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
131 pub const DMO_INPUT_DATA_BUFFERF_DISCONTINUITY: _DMO_INPUT_DATA_BUFFER_FLAGS = 8i32;
132 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
133 pub type _DMO_INPUT_STATUS_FLAGS = i32;
134 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
135 pub const DMO_INPUT_STATUSF_ACCEPT_DATA: _DMO_INPUT_STATUS_FLAGS = 1i32;
136 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
137 pub type _DMO_INPUT_STREAM_INFO_FLAGS = i32;
138 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
139 pub const DMO_INPUT_STREAMF_WHOLE_SAMPLES: _DMO_INPUT_STREAM_INFO_FLAGS = 1i32;
140 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
141 pub const DMO_INPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER: _DMO_INPUT_STREAM_INFO_FLAGS = 2i32;
142 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
143 pub const DMO_INPUT_STREAMF_FIXED_SAMPLE_SIZE: _DMO_INPUT_STREAM_INFO_FLAGS = 4i32;
144 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
145 pub const DMO_INPUT_STREAMF_HOLDS_BUFFERS: _DMO_INPUT_STREAM_INFO_FLAGS = 8i32;
146 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
147 pub type _DMO_OUTPUT_DATA_BUFFER_FLAGS = i32;
148 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
149 pub const DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT: _DMO_OUTPUT_DATA_BUFFER_FLAGS = 1i32;
150 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
151 pub const DMO_OUTPUT_DATA_BUFFERF_TIME: _DMO_OUTPUT_DATA_BUFFER_FLAGS = 2i32;
152 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
153 pub const DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH: _DMO_OUTPUT_DATA_BUFFER_FLAGS = 4i32;
154 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
155 pub const DMO_OUTPUT_DATA_BUFFERF_DISCONTINUITY: _DMO_OUTPUT_DATA_BUFFER_FLAGS = 8i32;
156 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
157 pub const DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE: _DMO_OUTPUT_DATA_BUFFER_FLAGS = 16777216i32;
158 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
159 pub type _DMO_OUTPUT_STREAM_INFO_FLAGS = i32;
160 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
161 pub const DMO_OUTPUT_STREAMF_WHOLE_SAMPLES: _DMO_OUTPUT_STREAM_INFO_FLAGS = 1i32;
162 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
163 pub const DMO_OUTPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER: _DMO_OUTPUT_STREAM_INFO_FLAGS = 2i32;
164 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
165 pub const DMO_OUTPUT_STREAMF_FIXED_SAMPLE_SIZE: _DMO_OUTPUT_STREAM_INFO_FLAGS = 4i32;
166 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
167 pub const DMO_OUTPUT_STREAMF_DISCARDABLE: _DMO_OUTPUT_STREAM_INFO_FLAGS = 8i32;
168 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
169 pub const DMO_OUTPUT_STREAMF_OPTIONAL: _DMO_OUTPUT_STREAM_INFO_FLAGS = 16i32;
170 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
171 pub type _DMO_PROCESS_OUTPUT_FLAGS = i32;
172 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
173 pub const DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER: _DMO_PROCESS_OUTPUT_FLAGS = 1i32;
174 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
175 pub type _DMO_QUALITY_STATUS_FLAGS = i32;
176 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
177 pub const DMO_QUALITY_STATUS_ENABLED: _DMO_QUALITY_STATUS_FLAGS = 1i32;
178 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
179 pub type _DMO_SET_TYPE_FLAGS = i32;
180 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
181 pub const DMO_SET_TYPEF_TEST_ONLY: _DMO_SET_TYPE_FLAGS = 1i32;
182 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
183 pub const DMO_SET_TYPEF_CLEAR: _DMO_SET_TYPE_FLAGS = 2i32;
184 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
185 pub type _DMO_VIDEO_OUTPUT_STREAM_FLAGS = i32;
186 #[doc = "*Required features: `\"Win32_Media_DxMediaObjects\"`*"]
187 pub const DMO_VOSF_NEEDS_PREVIOUS_SAMPLE: _DMO_VIDEO_OUTPUT_STREAM_FLAGS = 1i32;