1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)] 2 #[link(name = "windows")] 3 extern "system" { 4 #[cfg(feature = "Win32_Foundation")] KsCreateAllocator(connectionhandle: super::super::Foundation::HANDLE, allocatorframing: *const KSALLOCATOR_FRAMING, allocatorhandle: *mut super::super::Foundation::HANDLE) -> u325 pub fn KsCreateAllocator(connectionhandle: super::super::Foundation::HANDLE, allocatorframing: *const KSALLOCATOR_FRAMING, allocatorhandle: *mut super::super::Foundation::HANDLE) -> u32; 6 #[cfg(feature = "Win32_Foundation")] KsCreateAllocator2(connectionhandle: super::super::Foundation::HANDLE, allocatorframing: *const KSALLOCATOR_FRAMING, allocatorhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT7 pub fn KsCreateAllocator2(connectionhandle: super::super::Foundation::HANDLE, allocatorframing: *const KSALLOCATOR_FRAMING, allocatorhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT; 8 #[cfg(feature = "Win32_Foundation")] KsCreateClock(connectionhandle: super::super::Foundation::HANDLE, clockcreate: *const KSCLOCK_CREATE, clockhandle: *mut super::super::Foundation::HANDLE) -> u329 pub fn KsCreateClock(connectionhandle: super::super::Foundation::HANDLE, clockcreate: *const KSCLOCK_CREATE, clockhandle: *mut super::super::Foundation::HANDLE) -> u32; 10 #[cfg(feature = "Win32_Foundation")] KsCreateClock2(connectionhandle: super::super::Foundation::HANDLE, clockcreate: *const KSCLOCK_CREATE, clockhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT11 pub fn KsCreateClock2(connectionhandle: super::super::Foundation::HANDLE, clockcreate: *const KSCLOCK_CREATE, clockhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT; 12 #[cfg(feature = "Win32_Foundation")] KsCreatePin(filterhandle: super::super::Foundation::HANDLE, connect: *const KSPIN_CONNECT, desiredaccess: u32, connectionhandle: *mut super::super::Foundation::HANDLE) -> u3213 pub fn KsCreatePin(filterhandle: super::super::Foundation::HANDLE, connect: *const KSPIN_CONNECT, desiredaccess: u32, connectionhandle: *mut super::super::Foundation::HANDLE) -> u32; 14 #[cfg(feature = "Win32_Foundation")] KsCreatePin2(filterhandle: super::super::Foundation::HANDLE, connect: *const KSPIN_CONNECT, desiredaccess: u32, connectionhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT15 pub fn KsCreatePin2(filterhandle: super::super::Foundation::HANDLE, connect: *const KSPIN_CONNECT, desiredaccess: u32, connectionhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT; 16 #[cfg(feature = "Win32_Foundation")] KsCreateTopologyNode(parenthandle: super::super::Foundation::HANDLE, nodecreate: *const KSNODE_CREATE, desiredaccess: u32, nodehandle: *mut super::super::Foundation::HANDLE) -> u3217 pub fn KsCreateTopologyNode(parenthandle: super::super::Foundation::HANDLE, nodecreate: *const KSNODE_CREATE, desiredaccess: u32, nodehandle: *mut super::super::Foundation::HANDLE) -> u32; 18 #[cfg(feature = "Win32_Foundation")] KsCreateTopologyNode2(parenthandle: super::super::Foundation::HANDLE, nodecreate: *const KSNODE_CREATE, desiredaccess: u32, nodehandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT19 pub fn KsCreateTopologyNode2(parenthandle: super::super::Foundation::HANDLE, nodecreate: *const KSNODE_CREATE, desiredaccess: u32, nodehandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT; 20 } 21 pub const AEC_MODE_FULL_DUPLEX: u32 = 2u32; 22 pub const AEC_MODE_HALF_DUPLEX: u32 = 1u32; 23 pub const AEC_MODE_PASS_THROUGH: u32 = 0u32; 24 pub const AEC_STATUS_FD_CURRENTLY_CONVERGED: u32 = 8u32; 25 pub const AEC_STATUS_FD_HISTORY_CONTINUOUSLY_CONVERGED: u32 = 1u32; 26 pub const AEC_STATUS_FD_HISTORY_PREVIOUSLY_DIVERGED: u32 = 2u32; 27 pub const AEC_STATUS_FD_HISTORY_UNINITIALIZED: u32 = 0u32; 28 #[repr(C)] 29 pub struct ALLOCATOR_PROPERTIES_EX { 30 pub cBuffers: i32, 31 pub cbBuffer: i32, 32 pub cbAlign: i32, 33 pub cbPrefix: i32, 34 pub MemoryType: ::windows_sys::core::GUID, 35 pub BusType: ::windows_sys::core::GUID, 36 pub State: PIPE_STATE, 37 pub Input: PIPE_TERMINATION, 38 pub Output: PIPE_TERMINATION, 39 pub Strategy: u32, 40 pub Flags: u32, 41 pub Weight: u32, 42 pub LogicalMemoryType: KS_LogicalMemoryType, 43 pub AllocatorPlace: PIPE_ALLOCATOR_PLACE, 44 pub Dimensions: PIPE_DIMENSIONS, 45 pub PhysicalRange: KS_FRAMING_RANGE, 46 pub PrevSegment: *mut IKsAllocatorEx, 47 pub CountNextSegments: u32, 48 pub NextSegments: *mut *mut IKsAllocatorEx, 49 pub InsideFactors: u32, 50 pub NumberPins: u32, 51 } 52 impl ::core::marker::Copy for ALLOCATOR_PROPERTIES_EX {} 53 impl ::core::clone::Clone for ALLOCATOR_PROPERTIES_EX { clone(&self) -> Self54 fn clone(&self) -> Self { 55 *self 56 } 57 } 58 pub const APO_CLASS_UUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1502215400, data2: 40144, data3: 18045, data4: [138, 106, 84, 25, 227, 21, 41, 212] }; 59 pub const AUDIOENDPOINT_CLASS_UUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 60 data1: 3244708412, 61 data2: 65036, 62 data3: 19092, 63 data4: [165, 134, 241, 168, 12, 251, 191, 62], 64 }; 65 pub const AUDIOMODULE_MAX_DATA_SIZE: u32 = 64000u32; 66 pub const AUDIOMODULE_MAX_NAME_CCH_SIZE: u32 = 128u32; 67 pub type AUDIOPOSTURE_ORIENTATION = i32; 68 pub const AUDIOPOSTURE_ORIENTATION_NOTROTATED: AUDIOPOSTURE_ORIENTATION = 0i32; 69 pub const AUDIOPOSTURE_ORIENTATION_ROTATED90DEGREESCOUNTERCLOCKWISE: AUDIOPOSTURE_ORIENTATION = 1i32; 70 pub const AUDIOPOSTURE_ORIENTATION_ROTATED180DEGREESCOUNTERCLOCKWISE: AUDIOPOSTURE_ORIENTATION = 2i32; 71 pub const AUDIOPOSTURE_ORIENTATION_ROTATED270DEGREESCOUNTERCLOCKWISE: AUDIOPOSTURE_ORIENTATION = 3i32; 72 #[repr(C)] 73 #[cfg(feature = "Win32_Foundation")] 74 pub struct AUDIORESOURCEMANAGEMENT_RESOURCEGROUP { 75 pub ResourceGroupAcquired: super::super::Foundation::BOOL, 76 pub ResourceGroupName: [u16; 256], 77 } 78 #[cfg(feature = "Win32_Foundation")] 79 impl ::core::marker::Copy for AUDIORESOURCEMANAGEMENT_RESOURCEGROUP {} 80 #[cfg(feature = "Win32_Foundation")] 81 impl ::core::clone::Clone for AUDIORESOURCEMANAGEMENT_RESOURCEGROUP { clone(&self) -> Self82 fn clone(&self) -> Self { 83 *self 84 } 85 } 86 pub type AUDIO_CURVE_TYPE = i32; 87 pub const AUDIO_CURVE_TYPE_NONE: AUDIO_CURVE_TYPE = 0i32; 88 pub const AUDIO_CURVE_TYPE_WINDOWS_FADE: AUDIO_CURVE_TYPE = 1i32; 89 pub const AUDIO_EFFECT_TYPE_ACOUSTIC_ECHO_CANCELLATION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869054, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 90 pub const AUDIO_EFFECT_TYPE_AUTOMATIC_GAIN_CONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869056, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 91 pub const AUDIO_EFFECT_TYPE_BASS_BOOST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869061, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 92 pub const AUDIO_EFFECT_TYPE_BASS_MANAGEMENT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869066, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 93 pub const AUDIO_EFFECT_TYPE_BEAMFORMING: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869057, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 94 pub const AUDIO_EFFECT_TYPE_CONSTANT_TONE_REMOVAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869058, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 95 pub const AUDIO_EFFECT_TYPE_DEEP_NOISE_SUPPRESSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869072, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 96 pub const AUDIO_EFFECT_TYPE_DYNAMIC_RANGE_COMPRESSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869070, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 97 pub const AUDIO_EFFECT_TYPE_ENVIRONMENTAL_EFFECTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869067, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 98 pub const AUDIO_EFFECT_TYPE_EQUALIZER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869059, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 99 pub const AUDIO_EFFECT_TYPE_FAR_FIELD_BEAMFORMING: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869071, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 100 pub const AUDIO_EFFECT_TYPE_LOUDNESS_EQUALIZER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869060, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 101 pub const AUDIO_EFFECT_TYPE_NOISE_SUPPRESSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869055, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 102 pub const AUDIO_EFFECT_TYPE_ROOM_CORRECTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869065, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 103 pub const AUDIO_EFFECT_TYPE_SPEAKER_COMPENSATION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869069, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 104 pub const AUDIO_EFFECT_TYPE_SPEAKER_FILL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869064, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 105 pub const AUDIO_EFFECT_TYPE_SPEAKER_PROTECTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869068, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 106 pub const AUDIO_EFFECT_TYPE_VIRTUAL_HEADPHONES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869063, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 107 pub const AUDIO_EFFECT_TYPE_VIRTUAL_SURROUND: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1868869062, data2: 33297, data3: 4578, data4: [140, 112, 44, 39, 215, 240, 1, 250] }; 108 pub const AUDIO_SIGNALPROCESSINGMODE_COMMUNICATIONS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 109 data1: 2559906611, 110 data2: 47565, 111 data3: 18609, 112 data4: [160, 163, 255, 64, 104, 45, 115, 247], 113 }; 114 pub const AUDIO_SIGNALPROCESSINGMODE_DEFAULT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 115 data1: 3247320958, 116 data2: 37693, 117 data3: 18789, 118 data4: [183, 209, 30, 239, 34, 141, 42, 243], 119 }; 120 pub const AUDIO_SIGNALPROCESSINGMODE_FAR_FIELD_SPEECH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 121 data1: 680795322, 122 data2: 15334, 123 data3: 19064, 124 data4: [154, 118, 48, 253, 145, 85, 155, 100], 125 }; 126 pub const AUDIO_SIGNALPROCESSINGMODE_MEDIA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 127 data1: 1199571022, 128 data2: 28979, 129 data3: 16856, 130 data4: [140, 116, 102, 13, 173, 210, 192, 238], 131 }; 132 pub const AUDIO_SIGNALPROCESSINGMODE_MOVIE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 133 data1: 2993679117, 134 data2: 60564, 135 data3: 18300, 136 data4: [148, 148, 209, 171, 142, 117, 63, 110], 137 }; 138 pub const AUDIO_SIGNALPROCESSINGMODE_NOTIFICATION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2633148171, data2: 62327, data3: 16443, data4: [189, 107, 54, 8, 99, 224, 53, 92] }; 139 pub const AUDIO_SIGNALPROCESSINGMODE_RAW: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 140 data1: 2660297248, 141 data2: 46227, 142 data3: 20433, 143 data4: [161, 168, 126, 19, 97, 169, 86, 207], 144 }; 145 pub const AUDIO_SIGNALPROCESSINGMODE_SPEECH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 146 data1: 4229758107, 147 data2: 47574, 148 data3: 19706, 149 data4: [181, 224, 75, 178, 22, 104, 120, 178], 150 }; 151 pub const AllocatorStrategy_DontCare: u32 = 0u32; 152 pub const AllocatorStrategy_MaximizeSpeed: u32 = 8u32; 153 pub const AllocatorStrategy_MinimizeFrameSize: u32 = 2u32; 154 pub const AllocatorStrategy_MinimizeNumberOfAllocators: u32 = 4u32; 155 pub const AllocatorStrategy_MinimizeNumberOfFrames: u32 = 1u32; 156 pub const BLUETOOTHLE_MIDI_SERVICE_UUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 62393946, data2: 60904, data3: 19251, data4: [167, 81, 108, 227, 78, 196, 199, 0] }; 157 pub const BLUETOOTH_MIDI_DATAIO_CHARACTERISTIC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 158 data1: 2004018651, 159 data2: 14440, 160 data3: 16658, 161 data4: [161, 169, 242, 102, 157, 16, 107, 243], 162 }; 163 pub const BUS_INTERFACE_REFERENCE_VERSION: u32 = 256u32; 164 pub type CAPTURE_MEMORY_ALLOCATION_FLAGS = i32; 165 pub const KS_CAPTURE_ALLOC_INVALID: CAPTURE_MEMORY_ALLOCATION_FLAGS = 0i32; 166 pub const KS_CAPTURE_ALLOC_SYSTEM: CAPTURE_MEMORY_ALLOCATION_FLAGS = 1i32; 167 pub const KS_CAPTURE_ALLOC_VRAM: CAPTURE_MEMORY_ALLOCATION_FLAGS = 2i32; 168 pub const KS_CAPTURE_ALLOC_SYSTEM_AGP: CAPTURE_MEMORY_ALLOCATION_FLAGS = 4i32; 169 pub const KS_CAPTURE_ALLOC_VRAM_MAPPED: CAPTURE_MEMORY_ALLOCATION_FLAGS = 8i32; 170 pub const KS_CAPTURE_ALLOC_SECURE_BUFFER: CAPTURE_MEMORY_ALLOCATION_FLAGS = 16i32; 171 #[repr(C)] 172 pub struct CC_BYTE_PAIR { 173 pub Decoded: [u8; 2], 174 pub Reserved: u16, 175 } 176 impl ::core::marker::Copy for CC_BYTE_PAIR {} 177 impl ::core::clone::Clone for CC_BYTE_PAIR { clone(&self) -> Self178 fn clone(&self) -> Self { 179 *self 180 } 181 } 182 #[repr(C)] 183 pub struct CC_HW_FIELD { 184 pub ScanlinesRequested: VBICODECFILTERING_SCANLINES, 185 pub fieldFlags: u32, 186 pub PictureNumber: i64, 187 pub Lines: [CC_BYTE_PAIR; 12], 188 } 189 impl ::core::marker::Copy for CC_HW_FIELD {} 190 impl ::core::clone::Clone for CC_HW_FIELD { clone(&self) -> Self191 fn clone(&self) -> Self { 192 *self 193 } 194 } 195 pub const CC_MAX_HW_DECODE_LINES: u32 = 12u32; 196 pub const CLSID_KsIBasicAudioInterfaceHandler: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3120081982, data2: 3953, data3: 4562, data4: [183, 44, 0, 192, 79, 182, 189, 61] }; 197 pub const CLSID_Proxy: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 399288091, data2: 60631, data3: 4560, data4: [185, 8, 0, 160, 201, 34, 49, 150] }; 198 pub const CODECAPI_ALLSETTINGS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 199 data1: 1784118930, 200 data2: 33761, 201 data3: 16659, 202 data4: [173, 194, 79, 206, 195, 47, 131, 161], 203 }; 204 pub const CODECAPI_AUDIO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3117521470, data2: 63639, data3: 17052, data4: [188, 70, 129, 56, 183, 39, 43, 45] }; 205 pub const CODECAPI_CHANGELISTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1655777999, data2: 63152, data3: 18393, data4: [148, 86, 150, 242, 44, 78, 11, 157] }; 206 pub const CODECAPI_CURRENTCHANGELIST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 207 data1: 481382019, 208 data2: 32114, 209 data3: 18007, 210 data4: [131, 253, 71, 162, 197, 185, 209, 61], 211 }; 212 pub const CODECAPI_SETALLDEFAULTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1818126972, data2: 44280, data3: 20309, data4: [169, 153, 26, 98, 129, 9, 5, 27] }; 213 pub const CODECAPI_SUPPORTSEVENTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 214 data1: 92385175, 215 data2: 30355, 216 data3: 19901, 217 data4: [157, 202, 63, 158, 189, 101, 133, 161], 218 }; 219 pub const CODECAPI_VIDEO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1897064673, data2: 15619, data3: 18415, data4: [142, 96, 3, 241, 207, 83, 115, 1] }; 220 pub type CONSTRICTOR_OPTION = i32; 221 pub const CONSTRICTOR_OPTION_DISABLE: CONSTRICTOR_OPTION = 0i32; 222 pub const CONSTRICTOR_OPTION_MUTE: CONSTRICTOR_OPTION = 1i32; 223 #[repr(C)] 224 pub struct DEVCAPS { 225 pub CanRecord: i32, 226 pub CanRecordStrobe: i32, 227 pub HasAudio: i32, 228 pub HasVideo: i32, 229 pub UsesFiles: i32, 230 pub CanSave: i32, 231 pub DeviceType: i32, 232 pub TCRead: i32, 233 pub TCWrite: i32, 234 pub CTLRead: i32, 235 pub IndexRead: i32, 236 pub Preroll: i32, 237 pub Postroll: i32, 238 pub SyncAcc: i32, 239 pub NormRate: i32, 240 pub CanPreview: i32, 241 pub CanMonitorSrc: i32, 242 pub CanTest: i32, 243 pub VideoIn: i32, 244 pub AudioIn: i32, 245 pub Calibrate: i32, 246 pub SeekType: i32, 247 pub SimulatedHardware: i32, 248 } 249 impl ::core::marker::Copy for DEVCAPS {} 250 impl ::core::clone::Clone for DEVCAPS { clone(&self) -> Self251 fn clone(&self) -> Self { 252 *self 253 } 254 } 255 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] 256 pub const DEVPKEY_KsAudio_Controller_DeviceInterface_Path: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { 257 fmtid: ::windows_sys::core::GUID { data1: 333448406, data2: 45158, data3: 17341, data4: [145, 59, 164, 21, 205, 19, 218, 135] }, 258 pid: 3u32, 259 }; 260 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] 261 pub const DEVPKEY_KsAudio_PacketSize_Constraints: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { 262 fmtid: ::windows_sys::core::GUID { data1: 333448406, data2: 45158, data3: 17341, data4: [145, 59, 164, 21, 205, 19, 218, 135] }, 263 pid: 2u32, 264 }; 265 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] 266 pub const DEVPKEY_KsAudio_PacketSize_Constraints2: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { 267 fmtid: ::windows_sys::core::GUID { 268 data1: 2483353473, 269 data2: 29073, 270 data3: 16539, 271 data4: [139, 11, 128, 191, 110, 194, 41, 174], 272 }, 273 pid: 2u32, 274 }; 275 #[repr(C)] 276 pub struct DS3DVECTOR { 277 pub Anonymous1: DS3DVECTOR_0, 278 pub Anonymous2: DS3DVECTOR_1, 279 pub Anonymous3: DS3DVECTOR_2, 280 } 281 impl ::core::marker::Copy for DS3DVECTOR {} 282 impl ::core::clone::Clone for DS3DVECTOR { clone(&self) -> Self283 fn clone(&self) -> Self { 284 *self 285 } 286 } 287 #[repr(C)] 288 pub union DS3DVECTOR_0 { 289 pub x: f32, 290 pub dvX: f32, 291 } 292 impl ::core::marker::Copy for DS3DVECTOR_0 {} 293 impl ::core::clone::Clone for DS3DVECTOR_0 { clone(&self) -> Self294 fn clone(&self) -> Self { 295 *self 296 } 297 } 298 #[repr(C)] 299 pub union DS3DVECTOR_1 { 300 pub y: f32, 301 pub dvY: f32, 302 } 303 impl ::core::marker::Copy for DS3DVECTOR_1 {} 304 impl ::core::clone::Clone for DS3DVECTOR_1 { clone(&self) -> Self305 fn clone(&self) -> Self { 306 *self 307 } 308 } 309 #[repr(C)] 310 pub union DS3DVECTOR_2 { 311 pub z: f32, 312 pub dvZ: f32, 313 } 314 impl ::core::marker::Copy for DS3DVECTOR_2 {} 315 impl ::core::clone::Clone for DS3DVECTOR_2 { clone(&self) -> Self316 fn clone(&self) -> Self { 317 *self 318 } 319 } 320 pub const ENCAPIPARAM_BITRATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 321 data1: 1238125635, 322 data2: 51843, 323 data3: 19156, 324 data4: [169, 175, 243, 105, 106, 246, 102, 223], 325 }; 326 pub const ENCAPIPARAM_BITRATE_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3999248988, data2: 50963, data3: 16593, data4: [157, 88, 192, 215, 36, 30, 37, 15] }; 327 pub const ENCAPIPARAM_PEAK_BITRATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1883182761, data2: 15688, data3: 17569, data4: [176, 119, 1, 141, 255, 145, 93, 25] }; 328 pub type EPcxConnectionType = i32; 329 pub const eConnTypeUnknown: EPcxConnectionType = 0i32; 330 pub const eConnType3Point5mm: EPcxConnectionType = 1i32; 331 pub const eConnTypeQuarter: EPcxConnectionType = 2i32; 332 pub const eConnTypeAtapiInternal: EPcxConnectionType = 3i32; 333 pub const eConnTypeRCA: EPcxConnectionType = 4i32; 334 pub const eConnTypeOptical: EPcxConnectionType = 5i32; 335 pub const eConnTypeOtherDigital: EPcxConnectionType = 6i32; 336 pub const eConnTypeOtherAnalog: EPcxConnectionType = 7i32; 337 pub const eConnTypeMultichannelAnalogDIN: EPcxConnectionType = 8i32; 338 pub const eConnTypeXlrProfessional: EPcxConnectionType = 9i32; 339 pub const eConnTypeRJ11Modem: EPcxConnectionType = 10i32; 340 pub const eConnTypeCombination: EPcxConnectionType = 11i32; 341 pub type EPcxGenLocation = i32; 342 pub const eGenLocPrimaryBox: EPcxGenLocation = 0i32; 343 pub const eGenLocInternal: EPcxGenLocation = 1i32; 344 pub const eGenLocSeparate: EPcxGenLocation = 2i32; 345 pub const eGenLocOther: EPcxGenLocation = 3i32; 346 pub const EPcxGenLocation_enum_count: EPcxGenLocation = 4i32; 347 pub type EPcxGeoLocation = i32; 348 pub const eGeoLocRear: EPcxGeoLocation = 1i32; 349 pub const eGeoLocFront: EPcxGeoLocation = 2i32; 350 pub const eGeoLocLeft: EPcxGeoLocation = 3i32; 351 pub const eGeoLocRight: EPcxGeoLocation = 4i32; 352 pub const eGeoLocTop: EPcxGeoLocation = 5i32; 353 pub const eGeoLocBottom: EPcxGeoLocation = 6i32; 354 pub const eGeoLocRearPanel: EPcxGeoLocation = 7i32; 355 pub const eGeoLocRiser: EPcxGeoLocation = 8i32; 356 pub const eGeoLocInsideMobileLid: EPcxGeoLocation = 9i32; 357 pub const eGeoLocDrivebay: EPcxGeoLocation = 10i32; 358 pub const eGeoLocHDMI: EPcxGeoLocation = 11i32; 359 pub const eGeoLocOutsideMobileLid: EPcxGeoLocation = 12i32; 360 pub const eGeoLocATAPI: EPcxGeoLocation = 13i32; 361 pub const eGeoLocNotApplicable: EPcxGeoLocation = 14i32; 362 pub const eGeoLocReserved6: EPcxGeoLocation = 15i32; 363 pub const EPcxGeoLocation_enum_count: EPcxGeoLocation = 16i32; 364 pub type EPxcPortConnection = i32; 365 pub const ePortConnJack: EPxcPortConnection = 0i32; 366 pub const ePortConnIntegratedDevice: EPxcPortConnection = 1i32; 367 pub const ePortConnBothIntegratedAndJack: EPxcPortConnection = 2i32; 368 pub const ePortConnUnknown: EPxcPortConnection = 3i32; 369 pub const EVENTSETID_CROSSBAR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401153, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 370 pub const EVENTSETID_TUNER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401094, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 371 pub const EVENTSETID_VIDCAP_CAMERACONTROL_REGION_OF_INTEREST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 372 data1: 803208285, 373 data2: 50994, 374 data3: 19366, 375 data4: [181, 223, 107, 77, 127, 200, 139, 139], 376 }; 377 pub const EVENTSETID_VIDEODECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401121, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 378 pub type FRAMING_CACHE_OPS = i32; 379 pub const Framing_Cache_Update: FRAMING_CACHE_OPS = 0i32; 380 pub const Framing_Cache_ReadLast: FRAMING_CACHE_OPS = 1i32; 381 pub const Framing_Cache_ReadOrig: FRAMING_CACHE_OPS = 2i32; 382 pub const Framing_Cache_Write: FRAMING_CACHE_OPS = 3i32; 383 pub type FRAMING_PROP = i32; 384 pub const FramingProp_Uninitialized: FRAMING_PROP = 0i32; 385 pub const FramingProp_None: FRAMING_PROP = 1i32; 386 pub const FramingProp_Old: FRAMING_PROP = 2i32; 387 pub const FramingProp_Ex: FRAMING_PROP = 3i32; 388 pub const GUID_NULL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 0, data3: 0, data4: [0, 0, 0, 0, 0, 0, 0, 0] }; 389 pub type IKsAggregateControl = *mut ::core::ffi::c_void; 390 #[repr(C)] 391 pub struct IKsAllocator(pub u8); 392 #[repr(C)] 393 pub struct IKsAllocatorEx(pub u8); 394 pub type IKsControl = *mut ::core::ffi::c_void; 395 pub type IKsFormatSupport = *mut ::core::ffi::c_void; 396 pub type IKsJackContainerId = *mut ::core::ffi::c_void; 397 pub type IKsJackDescription = *mut ::core::ffi::c_void; 398 pub type IKsJackDescription2 = *mut ::core::ffi::c_void; 399 pub type IKsJackSinkInformation = *mut ::core::ffi::c_void; 400 #[repr(C)] 401 pub struct IKsPin(pub u8); 402 pub type IKsPropertySet = *mut ::core::ffi::c_void; 403 pub type IKsTopology = *mut ::core::ffi::c_void; 404 #[repr(C)] 405 pub struct INTERLEAVED_AUDIO_FORMAT_INFORMATION { 406 pub Size: u32, 407 pub PrimaryChannelCount: u32, 408 pub PrimaryChannelStartPosition: u32, 409 pub PrimaryChannelMask: u32, 410 pub InterleavedChannelCount: u32, 411 pub InterleavedChannelStartPosition: u32, 412 pub InterleavedChannelMask: u32, 413 } 414 impl ::core::marker::Copy for INTERLEAVED_AUDIO_FORMAT_INFORMATION {} 415 impl ::core::clone::Clone for INTERLEAVED_AUDIO_FORMAT_INFORMATION { clone(&self) -> Self416 fn clone(&self) -> Self { 417 *self 418 } 419 } 420 pub const IOCTL_KS_DISABLE_EVENT: u32 = 3080203u32; 421 pub const IOCTL_KS_ENABLE_EVENT: u32 = 3080199u32; 422 pub const IOCTL_KS_HANDSHAKE: u32 = 3080223u32; 423 pub const IOCTL_KS_METHOD: u32 = 3080207u32; 424 pub const IOCTL_KS_PROPERTY: u32 = 3080195u32; 425 pub const IOCTL_KS_READ_STREAM: u32 = 3096599u32; 426 pub const IOCTL_KS_RESET_STATE: u32 = 3080219u32; 427 pub const IOCTL_KS_WRITE_STREAM: u32 = 3112979u32; 428 pub const JACKDESC2_DYNAMIC_FORMAT_CHANGE_CAPABILITY: u32 = 2u32; 429 pub const JACKDESC2_PRESENCE_DETECT_CAPABILITY: u32 = 1u32; 430 #[repr(C)] 431 #[cfg(feature = "Win32_Foundation")] 432 pub struct KSAC3_ALTERNATE_AUDIO { 433 pub fStereo: super::super::Foundation::BOOL, 434 pub DualMode: u32, 435 } 436 #[cfg(feature = "Win32_Foundation")] 437 impl ::core::marker::Copy for KSAC3_ALTERNATE_AUDIO {} 438 #[cfg(feature = "Win32_Foundation")] 439 impl ::core::clone::Clone for KSAC3_ALTERNATE_AUDIO { clone(&self) -> Self440 fn clone(&self) -> Self { 441 *self 442 } 443 } 444 pub const KSAC3_ALTERNATE_AUDIO_1: u32 = 1u32; 445 pub const KSAC3_ALTERNATE_AUDIO_2: u32 = 2u32; 446 pub const KSAC3_ALTERNATE_AUDIO_BOTH: u32 = 3u32; 447 #[repr(C)] 448 pub struct KSAC3_BIT_STREAM_MODE { 449 pub BitStreamMode: i32, 450 } 451 impl ::core::marker::Copy for KSAC3_BIT_STREAM_MODE {} 452 impl ::core::clone::Clone for KSAC3_BIT_STREAM_MODE { clone(&self) -> Self453 fn clone(&self) -> Self { 454 *self 455 } 456 } 457 #[repr(C)] 458 pub struct KSAC3_DIALOGUE_LEVEL { 459 pub DialogueLevel: u32, 460 } 461 impl ::core::marker::Copy for KSAC3_DIALOGUE_LEVEL {} 462 impl ::core::clone::Clone for KSAC3_DIALOGUE_LEVEL { clone(&self) -> Self463 fn clone(&self) -> Self { 464 *self 465 } 466 } 467 #[repr(C)] 468 #[cfg(feature = "Win32_Foundation")] 469 pub struct KSAC3_DOWNMIX { 470 pub fDownMix: super::super::Foundation::BOOL, 471 pub fDolbySurround: super::super::Foundation::BOOL, 472 } 473 #[cfg(feature = "Win32_Foundation")] 474 impl ::core::marker::Copy for KSAC3_DOWNMIX {} 475 #[cfg(feature = "Win32_Foundation")] 476 impl ::core::clone::Clone for KSAC3_DOWNMIX { clone(&self) -> Self477 fn clone(&self) -> Self { 478 *self 479 } 480 } 481 #[repr(C)] 482 #[cfg(feature = "Win32_Foundation")] 483 pub struct KSAC3_ERROR_CONCEALMENT { 484 pub fRepeatPreviousBlock: super::super::Foundation::BOOL, 485 pub fErrorInCurrentBlock: super::super::Foundation::BOOL, 486 } 487 #[cfg(feature = "Win32_Foundation")] 488 impl ::core::marker::Copy for KSAC3_ERROR_CONCEALMENT {} 489 #[cfg(feature = "Win32_Foundation")] 490 impl ::core::clone::Clone for KSAC3_ERROR_CONCEALMENT { clone(&self) -> Self491 fn clone(&self) -> Self { 492 *self 493 } 494 } 495 #[repr(C)] 496 #[cfg(feature = "Win32_Foundation")] 497 pub struct KSAC3_ROOM_TYPE { 498 pub fLargeRoom: super::super::Foundation::BOOL, 499 } 500 #[cfg(feature = "Win32_Foundation")] 501 impl ::core::marker::Copy for KSAC3_ROOM_TYPE {} 502 #[cfg(feature = "Win32_Foundation")] 503 impl ::core::clone::Clone for KSAC3_ROOM_TYPE { clone(&self) -> Self504 fn clone(&self) -> Self { 505 *self 506 } 507 } 508 pub const KSAC3_SERVICE_COMMENTARY: u32 = 5u32; 509 pub const KSAC3_SERVICE_DIALOG_ONLY: u32 = 4u32; 510 pub const KSAC3_SERVICE_EMERGENCY_FLASH: u32 = 6u32; 511 pub const KSAC3_SERVICE_HEARING_IMPAIRED: u32 = 3u32; 512 pub const KSAC3_SERVICE_MAIN_AUDIO: u32 = 0u32; 513 pub const KSAC3_SERVICE_NO_DIALOG: u32 = 1u32; 514 pub const KSAC3_SERVICE_VISUALLY_IMPAIRED: u32 = 2u32; 515 pub const KSAC3_SERVICE_VOICE_OVER: u32 = 7u32; 516 pub const KSALGORITHMINSTANCE_SYSTEM_ACOUSTIC_ECHO_CANCEL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 472040813, data2: 39033, data3: 20315, data4: [163, 137, 39, 153, 109, 220, 40, 16] }; 517 pub const KSALGORITHMINSTANCE_SYSTEM_AGC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2500744633, data2: 34684, data3: 19559, data4: [190, 8, 228, 123, 86, 17, 19, 10] }; 518 pub const KSALGORITHMINSTANCE_SYSTEM_MICROPHONE_ARRAY_PROCESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3069550752, data2: 40545, data3: 20364, data4: [145, 227, 118, 207, 15, 60, 71, 31] }; 519 pub const KSALGORITHMINSTANCE_SYSTEM_NOISE_SUPPRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 520 data1: 1521518638, 521 data2: 29300, 522 data3: 17686, 523 data4: [135, 125, 78, 238, 153, 186, 79, 208], 524 }; 525 pub type KSALLOCATORMODE = i32; 526 pub const KsAllocatorMode_User: KSALLOCATORMODE = 0i32; 527 pub const KsAllocatorMode_Kernel: KSALLOCATORMODE = 1i32; 528 pub const KSALLOCATOR_FLAG_2D_BUFFER_REQUIRED: u32 = 32768u32; 529 pub const KSALLOCATOR_FLAG_ALLOCATOR_EXISTS: u32 = 2048u32; 530 pub const KSALLOCATOR_FLAG_ATTENTION_STEPPING: u32 = 8192u32; 531 pub const KSALLOCATOR_FLAG_CAN_ALLOCATE: u32 = 64u32; 532 pub const KSALLOCATOR_FLAG_CYCLE: u32 = 1024u32; 533 pub const KSALLOCATOR_FLAG_DEVICE_SPECIFIC: u32 = 32u32; 534 pub const KSALLOCATOR_FLAG_ENABLE_CACHED_MDL: u32 = 16384u32; 535 pub const KSALLOCATOR_FLAG_INDEPENDENT_RANGES: u32 = 4096u32; 536 pub const KSALLOCATOR_FLAG_INSIST_ON_FRAMESIZE_RATIO: u32 = 128u32; 537 pub const KSALLOCATOR_FLAG_MULTIPLE_OUTPUT: u32 = 512u32; 538 pub const KSALLOCATOR_FLAG_NO_FRAME_INTEGRITY: u32 = 256u32; 539 pub const KSALLOCATOR_FLAG_PARTIAL_READ_SUPPORT: u32 = 16u32; 540 #[repr(C)] 541 pub struct KSALLOCATOR_FRAMING { 542 pub Anonymous1: KSALLOCATOR_FRAMING_0, 543 pub PoolType: u32, 544 pub Frames: u32, 545 pub FrameSize: u32, 546 pub Anonymous2: KSALLOCATOR_FRAMING_1, 547 pub Reserved: u32, 548 } 549 impl ::core::marker::Copy for KSALLOCATOR_FRAMING {} 550 impl ::core::clone::Clone for KSALLOCATOR_FRAMING { clone(&self) -> Self551 fn clone(&self) -> Self { 552 *self 553 } 554 } 555 #[repr(C)] 556 pub union KSALLOCATOR_FRAMING_0 { 557 pub OptionsFlags: u32, 558 pub RequirementsFlags: u32, 559 } 560 impl ::core::marker::Copy for KSALLOCATOR_FRAMING_0 {} 561 impl ::core::clone::Clone for KSALLOCATOR_FRAMING_0 { clone(&self) -> Self562 fn clone(&self) -> Self { 563 *self 564 } 565 } 566 #[repr(C)] 567 pub union KSALLOCATOR_FRAMING_1 { 568 pub FileAlignment: u32, 569 pub FramePitch: i32, 570 } 571 impl ::core::marker::Copy for KSALLOCATOR_FRAMING_1 {} 572 impl ::core::clone::Clone for KSALLOCATOR_FRAMING_1 { clone(&self) -> Self573 fn clone(&self) -> Self { 574 *self 575 } 576 } 577 #[repr(C)] 578 pub struct KSALLOCATOR_FRAMING_EX { 579 pub CountItems: u32, 580 pub PinFlags: u32, 581 pub OutputCompression: KS_COMPRESSION, 582 pub PinWeight: u32, 583 pub FramingItem: [KS_FRAMING_ITEM; 1], 584 } 585 impl ::core::marker::Copy for KSALLOCATOR_FRAMING_EX {} 586 impl ::core::clone::Clone for KSALLOCATOR_FRAMING_EX { clone(&self) -> Self587 fn clone(&self) -> Self { 588 *self 589 } 590 } 591 pub const KSALLOCATOR_OPTIONF_COMPATIBLE: u32 = 1u32; 592 pub const KSALLOCATOR_OPTIONF_SYSTEM_MEMORY: u32 = 2u32; 593 pub const KSALLOCATOR_OPTIONF_VALID: u32 = 3u32; 594 pub const KSALLOCATOR_REQUIREMENTF_FRAME_INTEGRITY: u32 = 4u32; 595 pub const KSALLOCATOR_REQUIREMENTF_INPLACE_MODIFIER: u32 = 1u32; 596 pub const KSALLOCATOR_REQUIREMENTF_MUST_ALLOCATE: u32 = 8u32; 597 pub const KSALLOCATOR_REQUIREMENTF_PREFERENCES_ONLY: u32 = 2147483648u32; 598 pub const KSALLOCATOR_REQUIREMENTF_SYSTEM_MEMORY: u32 = 2u32; 599 pub const KSALLOCATOR_REQUIREMENTF_SYSTEM_MEMORY_CUSTOM_ALLOCATION: u32 = 16u32; 600 #[repr(C)] 601 pub struct KSATTRIBUTE { 602 pub Size: u32, 603 pub Flags: u32, 604 pub Attribute: ::windows_sys::core::GUID, 605 } 606 impl ::core::marker::Copy for KSATTRIBUTE {} 607 impl ::core::clone::Clone for KSATTRIBUTE { clone(&self) -> Self608 fn clone(&self) -> Self { 609 *self 610 } 611 } 612 pub const KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 613 data1: 3791167157, 614 data2: 24390, 615 data3: 16795, 616 data4: [150, 123, 255, 103, 112, 185, 132, 1], 617 }; 618 #[repr(C)] 619 pub struct KSATTRIBUTE_AUDIOSIGNALPROCESSING_MODE { 620 pub AttributeHeader: KSATTRIBUTE, 621 pub SignalProcessingMode: ::windows_sys::core::GUID, 622 } 623 impl ::core::marker::Copy for KSATTRIBUTE_AUDIOSIGNALPROCESSING_MODE {} 624 impl ::core::clone::Clone for KSATTRIBUTE_AUDIOSIGNALPROCESSING_MODE { clone(&self) -> Self625 fn clone(&self) -> Self { 626 *self 627 } 628 } 629 pub const KSATTRIBUTE_REQUIRED: u32 = 1u32; 630 pub const KSAUDDECOUTMODE_PCM_51: u32 = 2u32; 631 pub const KSAUDDECOUTMODE_SPDIFF: u32 = 4u32; 632 pub const KSAUDDECOUTMODE_STEREO_ANALOG: u32 = 1u32; 633 pub const KSAUDFNAME_3D_CENTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2667999412, data2: 39199, data3: 4562, data4: [172, 77, 0, 192, 79, 142, 251, 104] }; 634 pub const KSAUDFNAME_3D_DEPTH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1677678407, data2: 39199, data3: 4562, data4: [172, 77, 0, 192, 79, 142, 251, 104] }; 635 pub const KSAUDFNAME_3D_STEREO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940002, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 636 pub const KSAUDFNAME_ALTERNATE_MICROPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 734207339, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 637 pub const KSAUDFNAME_AUX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940030, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 638 pub const KSAUDFNAME_AUX_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940029, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 639 pub const KSAUDFNAME_AUX_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940028, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 640 pub const KSAUDFNAME_BASS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940000, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 641 pub const KSAUDFNAME_CD_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940027, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 642 pub const KSAUDFNAME_CD_IN_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940019, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 643 pub const KSAUDFNAME_CD_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940010, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 644 pub const KSAUDFNAME_CD_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940009, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 645 pub const KSAUDFNAME_LINE_IN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940025, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 646 pub const KSAUDFNAME_LINE_IN_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940020, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 647 pub const KSAUDFNAME_LINE_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940012, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 648 pub const KSAUDFNAME_LINE_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940011, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 649 pub const KSAUDFNAME_MASTER_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940004, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 650 pub const KSAUDFNAME_MASTER_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940003, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 651 pub const KSAUDFNAME_MICROPHONE_BOOST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 734207338, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 652 pub const KSAUDFNAME_MIC_IN_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940021, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 653 pub const KSAUDFNAME_MIC_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940014, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 654 pub const KSAUDFNAME_MIC_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940013, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 655 pub const KSAUDFNAME_MIDI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940024, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 656 pub const KSAUDFNAME_MIDI_IN_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940018, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 657 pub const KSAUDFNAME_MIDI_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940008, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 658 pub const KSAUDFNAME_MIDI_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940007, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 659 pub const KSAUDFNAME_MIDRANGE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 660 data1: 2731271288, 661 data2: 44676, 662 data3: 18849, 663 data4: [139, 114, 74, 208, 155, 120, 237, 52], 664 }; 665 pub const KSAUDFNAME_MONO_MIX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 14676088, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 666 pub const KSAUDFNAME_MONO_MIX_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 734207337, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 667 pub const KSAUDFNAME_MONO_MIX_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 582019838, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 668 pub const KSAUDFNAME_MONO_OUT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4189330883, data2: 38626, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 669 pub const KSAUDFNAME_MONO_OUT_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 449988588, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 670 pub const KSAUDFNAME_MONO_OUT_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 449988587, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 671 pub const KSAUDFNAME_PC_SPEAKER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940031, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 672 pub const KSAUDFNAME_PC_SPEAKER_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940017, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 673 pub const KSAUDFNAME_PC_SPEAKER_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940016, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 674 pub const KSAUDFNAME_PEAKMETER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 675 data1: 1474446144, 676 data2: 64603, 677 data3: 17938, 678 data4: [165, 98, 114, 177, 26, 41, 223, 174], 679 }; 680 pub const KSAUDFNAME_RECORDING_CONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940026, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 681 pub const KSAUDFNAME_RECORDING_SOURCE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940015, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 682 pub const KSAUDFNAME_STEREO_MIX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 14676087, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 683 pub const KSAUDFNAME_STEREO_MIX_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 582019837, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 684 pub const KSAUDFNAME_STEREO_MIX_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 449988589, data2: 38627, data3: 4562, data4: [172, 76, 0, 192, 79, 142, 251, 104] }; 685 pub const KSAUDFNAME_TREBLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940001, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 686 pub const KSAUDFNAME_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2438835908, data2: 42036, data3: 4562, data4: [172, 82, 0, 192, 79, 142, 251, 104] }; 687 pub const KSAUDFNAME_VIDEO_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2605115145, data2: 39210, data3: 4562, data4: [172, 77, 0, 192, 79, 142, 251, 104] }; 688 pub const KSAUDFNAME_VIDEO_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2605115144, data2: 39210, data3: 4562, data4: [172, 77, 0, 192, 79, 142, 251, 104] }; 689 pub const KSAUDFNAME_VOLUME_CONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940023, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 690 pub const KSAUDFNAME_WAVE_IN_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940022, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 691 pub const KSAUDFNAME_WAVE_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940006, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 692 pub const KSAUDFNAME_WAVE_OUT_MIX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940032, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 693 pub const KSAUDFNAME_WAVE_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 408940005, data2: 39173, data3: 4561, data4: [149, 169, 0, 192, 79, 185, 37, 211] }; 694 #[repr(C)] 695 pub struct KSAUDIOENGINE_BUFFER_SIZE_RANGE { 696 pub MinBufferBytes: u32, 697 pub MaxBufferBytes: u32, 698 } 699 impl ::core::marker::Copy for KSAUDIOENGINE_BUFFER_SIZE_RANGE {} 700 impl ::core::clone::Clone for KSAUDIOENGINE_BUFFER_SIZE_RANGE { clone(&self) -> Self701 fn clone(&self) -> Self { 702 *self 703 } 704 } 705 #[repr(C)] 706 pub struct KSAUDIOENGINE_DESCRIPTOR { 707 pub nHostPinId: u32, 708 pub nOffloadPinId: u32, 709 pub nLoopbackPinId: u32, 710 } 711 impl ::core::marker::Copy for KSAUDIOENGINE_DESCRIPTOR {} 712 impl ::core::clone::Clone for KSAUDIOENGINE_DESCRIPTOR { clone(&self) -> Self713 fn clone(&self) -> Self { 714 *self 715 } 716 } 717 #[repr(C)] 718 pub struct KSAUDIOENGINE_VOLUMELEVEL { 719 pub TargetVolume: i32, 720 pub CurveType: AUDIO_CURVE_TYPE, 721 pub CurveDuration: u64, 722 } 723 impl ::core::marker::Copy for KSAUDIOENGINE_VOLUMELEVEL {} 724 impl ::core::clone::Clone for KSAUDIOENGINE_VOLUMELEVEL { clone(&self) -> Self725 fn clone(&self) -> Self { 726 *self 727 } 728 } 729 #[repr(C)] 730 pub struct KSAUDIOMODULE_DESCRIPTOR { 731 pub ClassId: ::windows_sys::core::GUID, 732 pub InstanceId: u32, 733 pub VersionMajor: u32, 734 pub VersionMinor: u32, 735 pub Name: [u16; 128], 736 } 737 impl ::core::marker::Copy for KSAUDIOMODULE_DESCRIPTOR {} 738 impl ::core::clone::Clone for KSAUDIOMODULE_DESCRIPTOR { clone(&self) -> Self739 fn clone(&self) -> Self { 740 *self 741 } 742 } 743 #[repr(C)] 744 pub struct KSAUDIOMODULE_NOTIFICATION { 745 pub Anonymous: KSAUDIOMODULE_NOTIFICATION_0, 746 } 747 impl ::core::marker::Copy for KSAUDIOMODULE_NOTIFICATION {} 748 impl ::core::clone::Clone for KSAUDIOMODULE_NOTIFICATION { clone(&self) -> Self749 fn clone(&self) -> Self { 750 *self 751 } 752 } 753 #[repr(C)] 754 pub union KSAUDIOMODULE_NOTIFICATION_0 { 755 pub ProviderId: KSAUDIOMODULE_NOTIFICATION_0_0, 756 pub Alignment: i64, 757 } 758 impl ::core::marker::Copy for KSAUDIOMODULE_NOTIFICATION_0 {} 759 impl ::core::clone::Clone for KSAUDIOMODULE_NOTIFICATION_0 { clone(&self) -> Self760 fn clone(&self) -> Self { 761 *self 762 } 763 } 764 #[repr(C)] 765 pub struct KSAUDIOMODULE_NOTIFICATION_0_0 { 766 pub DeviceId: ::windows_sys::core::GUID, 767 pub ClassId: ::windows_sys::core::GUID, 768 pub InstanceId: u32, 769 pub Reserved: u32, 770 } 771 impl ::core::marker::Copy for KSAUDIOMODULE_NOTIFICATION_0_0 {} 772 impl ::core::clone::Clone for KSAUDIOMODULE_NOTIFICATION_0_0 { clone(&self) -> Self773 fn clone(&self) -> Self { 774 *self 775 } 776 } 777 #[repr(C)] 778 pub struct KSAUDIOMODULE_PROPERTY { 779 pub Property: KSIDENTIFIER, 780 pub ClassId: ::windows_sys::core::GUID, 781 pub InstanceId: u32, 782 } 783 impl ::core::marker::Copy for KSAUDIOMODULE_PROPERTY {} 784 impl ::core::clone::Clone for KSAUDIOMODULE_PROPERTY { clone(&self) -> Self785 fn clone(&self) -> Self { 786 *self 787 } 788 } 789 #[repr(C)] 790 pub struct KSAUDIO_CHANNEL_CONFIG { 791 pub ActiveSpeakerPositions: i32, 792 } 793 impl ::core::marker::Copy for KSAUDIO_CHANNEL_CONFIG {} 794 impl ::core::clone::Clone for KSAUDIO_CHANNEL_CONFIG { clone(&self) -> Self795 fn clone(&self) -> Self { 796 *self 797 } 798 } 799 #[repr(C)] 800 #[cfg(feature = "Win32_Foundation")] 801 pub struct KSAUDIO_COPY_PROTECTION { 802 pub fCopyrighted: super::super::Foundation::BOOL, 803 pub fOriginal: super::super::Foundation::BOOL, 804 } 805 #[cfg(feature = "Win32_Foundation")] 806 impl ::core::marker::Copy for KSAUDIO_COPY_PROTECTION {} 807 #[cfg(feature = "Win32_Foundation")] 808 impl ::core::clone::Clone for KSAUDIO_COPY_PROTECTION { clone(&self) -> Self809 fn clone(&self) -> Self { 810 *self 811 } 812 } 813 pub const KSAUDIO_CPU_RESOURCES_HOST_CPU: u32 = 2147483647u32; 814 pub const KSAUDIO_CPU_RESOURCES_NOT_HOST_CPU: u32 = 0u32; 815 #[repr(C)] 816 pub struct KSAUDIO_DYNAMIC_RANGE { 817 pub QuietCompression: u32, 818 pub LoudCompression: u32, 819 } 820 impl ::core::marker::Copy for KSAUDIO_DYNAMIC_RANGE {} 821 impl ::core::clone::Clone for KSAUDIO_DYNAMIC_RANGE { clone(&self) -> Self822 fn clone(&self) -> Self { 823 *self 824 } 825 } 826 #[repr(C)] 827 pub struct KSAUDIO_MICROPHONE_COORDINATES { 828 pub usType: u16, 829 pub wXCoord: i16, 830 pub wYCoord: i16, 831 pub wZCoord: i16, 832 pub wVerticalAngle: i16, 833 pub wHorizontalAngle: i16, 834 } 835 impl ::core::marker::Copy for KSAUDIO_MICROPHONE_COORDINATES {} 836 impl ::core::clone::Clone for KSAUDIO_MICROPHONE_COORDINATES { clone(&self) -> Self837 fn clone(&self) -> Self { 838 *self 839 } 840 } 841 #[repr(C)] 842 pub struct KSAUDIO_MIC_ARRAY_GEOMETRY { 843 pub usVersion: u16, 844 pub usMicArrayType: u16, 845 pub wVerticalAngleBegin: i16, 846 pub wVerticalAngleEnd: i16, 847 pub wHorizontalAngleBegin: i16, 848 pub wHorizontalAngleEnd: i16, 849 pub usFrequencyBandLo: u16, 850 pub usFrequencyBandHi: u16, 851 pub usNumberOfMicrophones: u16, 852 pub KsMicCoord: [KSAUDIO_MICROPHONE_COORDINATES; 1], 853 } 854 impl ::core::marker::Copy for KSAUDIO_MIC_ARRAY_GEOMETRY {} 855 impl ::core::clone::Clone for KSAUDIO_MIC_ARRAY_GEOMETRY { clone(&self) -> Self856 fn clone(&self) -> Self { 857 *self 858 } 859 } 860 #[repr(C)] 861 #[cfg(feature = "Win32_Foundation")] 862 pub struct KSAUDIO_MIXCAP_TABLE { 863 pub InputChannels: u32, 864 pub OutputChannels: u32, 865 pub Capabilities: [KSAUDIO_MIX_CAPS; 1], 866 } 867 #[cfg(feature = "Win32_Foundation")] 868 impl ::core::marker::Copy for KSAUDIO_MIXCAP_TABLE {} 869 #[cfg(feature = "Win32_Foundation")] 870 impl ::core::clone::Clone for KSAUDIO_MIXCAP_TABLE { clone(&self) -> Self871 fn clone(&self) -> Self { 872 *self 873 } 874 } 875 #[repr(C)] 876 #[cfg(feature = "Win32_Foundation")] 877 pub struct KSAUDIO_MIXLEVEL { 878 pub Mute: super::super::Foundation::BOOL, 879 pub Level: i32, 880 } 881 #[cfg(feature = "Win32_Foundation")] 882 impl ::core::marker::Copy for KSAUDIO_MIXLEVEL {} 883 #[cfg(feature = "Win32_Foundation")] 884 impl ::core::clone::Clone for KSAUDIO_MIXLEVEL { clone(&self) -> Self885 fn clone(&self) -> Self { 886 *self 887 } 888 } 889 #[repr(C)] 890 #[cfg(feature = "Win32_Foundation")] 891 pub struct KSAUDIO_MIX_CAPS { 892 pub Mute: super::super::Foundation::BOOL, 893 pub Minimum: i32, 894 pub Maximum: i32, 895 pub Anonymous: KSAUDIO_MIX_CAPS_0, 896 } 897 #[cfg(feature = "Win32_Foundation")] 898 impl ::core::marker::Copy for KSAUDIO_MIX_CAPS {} 899 #[cfg(feature = "Win32_Foundation")] 900 impl ::core::clone::Clone for KSAUDIO_MIX_CAPS { clone(&self) -> Self901 fn clone(&self) -> Self { 902 *self 903 } 904 } 905 #[repr(C)] 906 #[cfg(feature = "Win32_Foundation")] 907 pub union KSAUDIO_MIX_CAPS_0 { 908 pub Reset: i32, 909 pub Resolution: i32, 910 } 911 #[cfg(feature = "Win32_Foundation")] 912 impl ::core::marker::Copy for KSAUDIO_MIX_CAPS_0 {} 913 #[cfg(feature = "Win32_Foundation")] 914 impl ::core::clone::Clone for KSAUDIO_MIX_CAPS_0 { clone(&self) -> Self915 fn clone(&self) -> Self { 916 *self 917 } 918 } 919 #[repr(C)] 920 pub struct KSAUDIO_PACKETSIZE_CONSTRAINTS { 921 pub MinPacketPeriodInHns: u32, 922 pub PacketSizeFileAlignment: u32, 923 pub Reserved: u32, 924 pub NumProcessingModeConstraints: u32, 925 pub ProcessingModeConstraints: [_KSAUDIO_PACKETSIZE_SIGNALPROCESSINGMODE_CONSTRAINT; 1], 926 } 927 impl ::core::marker::Copy for KSAUDIO_PACKETSIZE_CONSTRAINTS {} 928 impl ::core::clone::Clone for KSAUDIO_PACKETSIZE_CONSTRAINTS { clone(&self) -> Self929 fn clone(&self) -> Self { 930 *self 931 } 932 } 933 #[repr(C)] 934 pub struct KSAUDIO_PACKETSIZE_CONSTRAINTS2 { 935 pub MinPacketPeriodInHns: u32, 936 pub PacketSizeFileAlignment: u32, 937 pub MaxPacketSizeInBytes: u32, 938 pub NumProcessingModeConstraints: u32, 939 pub ProcessingModeConstraints: [_KSAUDIO_PACKETSIZE_SIGNALPROCESSINGMODE_CONSTRAINT; 1], 940 } 941 impl ::core::marker::Copy for KSAUDIO_PACKETSIZE_CONSTRAINTS2 {} 942 impl ::core::clone::Clone for KSAUDIO_PACKETSIZE_CONSTRAINTS2 { clone(&self) -> Self943 fn clone(&self) -> Self { 944 *self 945 } 946 } 947 #[repr(C)] 948 pub struct KSAUDIO_POSITION { 949 pub PlayOffset: u64, 950 pub WriteOffset: u64, 951 } 952 impl ::core::marker::Copy for KSAUDIO_POSITION {} 953 impl ::core::clone::Clone for KSAUDIO_POSITION { clone(&self) -> Self954 fn clone(&self) -> Self { 955 *self 956 } 957 } 958 #[repr(C)] 959 pub struct KSAUDIO_POSITIONEX { 960 pub TimerFrequency: i64, 961 pub TimeStamp1: i64, 962 pub Position: KSAUDIO_POSITION, 963 pub TimeStamp2: i64, 964 } 965 impl ::core::marker::Copy for KSAUDIO_POSITIONEX {} 966 impl ::core::clone::Clone for KSAUDIO_POSITIONEX { clone(&self) -> Self967 fn clone(&self) -> Self { 968 *self 969 } 970 } 971 #[repr(C)] 972 pub struct KSAUDIO_PRESENTATION_POSITION { 973 pub u64PositionInBlocks: u64, 974 pub u64QPCPosition: u64, 975 } 976 impl ::core::marker::Copy for KSAUDIO_PRESENTATION_POSITION {} 977 impl ::core::clone::Clone for KSAUDIO_PRESENTATION_POSITION { clone(&self) -> Self978 fn clone(&self) -> Self { 979 *self 980 } 981 } 982 pub const KSAUDIO_QUALITY_ADVANCED: u32 = 3u32; 983 pub const KSAUDIO_QUALITY_BASIC: u32 = 2u32; 984 pub const KSAUDIO_QUALITY_PC: u32 = 1u32; 985 pub const KSAUDIO_QUALITY_WORST: u32 = 0u32; 986 pub const KSAUDIO_SPEAKER_DIRECTOUT: u32 = 0u32; 987 pub const KSAUDIO_SPEAKER_GROUND_FRONT_CENTER: u32 = 4u32; 988 pub const KSAUDIO_SPEAKER_GROUND_FRONT_LEFT: u32 = 1u32; 989 pub const KSAUDIO_SPEAKER_GROUND_FRONT_RIGHT: u32 = 2u32; 990 pub const KSAUDIO_SPEAKER_GROUND_REAR_LEFT: u32 = 16u32; 991 pub const KSAUDIO_SPEAKER_GROUND_REAR_RIGHT: u32 = 32u32; 992 pub const KSAUDIO_SPEAKER_MONO: u32 = 4u32; 993 pub const KSAUDIO_SPEAKER_SUPER_WOOFER: u32 = 8u32; 994 pub const KSAUDIO_SPEAKER_TOP_MIDDLE: u32 = 2048u32; 995 pub const KSAUDIO_STEREO_SPEAKER_GEOMETRY_HEADPHONE: i32 = -1i32; 996 pub const KSAUDIO_STEREO_SPEAKER_GEOMETRY_MAX: u32 = 180u32; 997 pub const KSAUDIO_STEREO_SPEAKER_GEOMETRY_MIN: u32 = 5u32; 998 pub const KSAUDIO_STEREO_SPEAKER_GEOMETRY_NARROW: u32 = 10u32; 999 pub const KSAUDIO_STEREO_SPEAKER_GEOMETRY_WIDE: u32 = 20u32; 1000 pub const KSCAMERAPROFILE_BalancedVideoAndPhoto: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1800581143, data2: 17095, data3: 18977, data4: [191, 227, 35, 240, 9, 20, 152, 135] }; 1001 pub const KSCAMERAPROFILE_CompressedCamera: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 238341569, data2: 10157, data3: 17279, data4: [171, 222, 2, 182, 41, 243, 123, 68] }; 1002 pub const KSCAMERAPROFILE_FLAGS_FACEDETECTION: u64 = 8u64; 1003 pub const KSCAMERAPROFILE_FLAGS_PHOTOHDR: u64 = 4u64; 1004 pub const KSCAMERAPROFILE_FLAGS_PREVIEW_RES_MUSTMATCH: u64 = 32u64; 1005 pub const KSCAMERAPROFILE_FLAGS_VARIABLEPHOTOSEQUENCE: u64 = 16u64; 1006 pub const KSCAMERAPROFILE_FLAGS_VIDEOHDR: u64 = 2u64; 1007 pub const KSCAMERAPROFILE_FLAGS_VIDEOSTABLIZATION: u64 = 1u64; 1008 pub const KSCAMERAPROFILE_FaceAuth_Mode: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1009 data1: 2167806754, 1010 data2: 28683, 1011 data3: 17734, 1012 data4: [162, 212, 197, 46, 144, 123, 252, 39], 1013 }; 1014 pub const KSCAMERAPROFILE_HDRWithWCGPhoto: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1015 data1: 2616652287, 1016 data2: 46421, 1017 data3: 17957, 1018 data4: [179, 38, 164, 109, 239, 49, 143, 183], 1019 }; 1020 pub const KSCAMERAPROFILE_HDRWithWCGVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1021 data1: 1260897078, 1022 data2: 18724, 1023 data3: 18825, 1024 data4: [185, 148, 253, 175, 29, 199, 205, 133], 1025 }; 1026 pub const KSCAMERAPROFILE_HighFrameRate: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1027 data1: 1450074387, 1028 data2: 35893, 1029 data3: 18663, 1030 data4: [184, 159, 210, 63, 220, 18, 25, 220], 1031 }; 1032 pub const KSCAMERAPROFILE_HighQualityPhoto: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1033 data1: 843319077, 1034 data2: 38427, 1035 data3: 19619, 1036 data4: [181, 178, 133, 78, 113, 157, 158, 27], 1037 }; 1038 pub const KSCAMERAPROFILE_Legacy: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1039 data1: 3028897153, 1040 data2: 25271, 1041 data3: 20204, 1042 data4: [135, 64, 128, 101, 140, 74, 157, 62], 1043 }; 1044 pub const KSCAMERAPROFILE_PhotoSequence: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 37330333, data2: 20200, data3: 18874, data4: [188, 7, 95, 241, 86, 83, 20, 19] }; 1045 pub const KSCAMERAPROFILE_VariablePhotoSequence: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1046 data1: 2683489110, 1047 data2: 59226, 1048 data3: 18865, 1049 data4: [169, 40, 153, 133, 213, 148, 111, 135], 1050 }; 1051 pub const KSCAMERAPROFILE_VideoConferencing: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1052 data1: 3309587080, 1053 data2: 57791, 1054 data3: 17815, 1055 data4: [178, 221, 158, 30, 173, 134, 75, 184], 1056 }; 1057 pub const KSCAMERAPROFILE_VideoHDR8: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3572757740, data2: 48639, data3: 17172, data4: [177, 212, 0, 142, 40, 31, 116, 231] }; 1058 pub const KSCAMERAPROFILE_VideoRecording: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1059 data1: 2699368424, 1060 data2: 36748, 1061 data3: 20335, 1062 data4: [154, 87, 70, 252, 47, 100, 126, 192], 1063 }; 1064 pub const KSCAMERA_EXTENDEDPROP_ADVANCEDPHOTO_AUTO: u64 = 1u64; 1065 pub const KSCAMERA_EXTENDEDPROP_ADVANCEDPHOTO_FNF: u64 = 4u64; 1066 pub const KSCAMERA_EXTENDEDPROP_ADVANCEDPHOTO_HDR: u64 = 2u64; 1067 pub const KSCAMERA_EXTENDEDPROP_ADVANCEDPHOTO_OFF: u64 = 0u64; 1068 pub const KSCAMERA_EXTENDEDPROP_ADVANCEDPHOTO_ULTRALOWLIGHT: u64 = 8u64; 1069 pub const KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR: u64 = 1u64; 1070 #[repr(C)] 1071 #[cfg(feature = "Win32_Foundation")] 1072 pub struct KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS { 1073 pub Resolution: super::super::Foundation::SIZE, 1074 pub MaxFrameRate: KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS_0, 1075 pub MaskResolution: super::super::Foundation::SIZE, 1076 pub SubType: ::windows_sys::core::GUID, 1077 } 1078 #[cfg(feature = "Win32_Foundation")] 1079 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS {} 1080 #[cfg(feature = "Win32_Foundation")] 1081 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS { clone(&self) -> Self1082 fn clone(&self) -> Self { 1083 *self 1084 } 1085 } 1086 #[repr(C)] 1087 #[cfg(feature = "Win32_Foundation")] 1088 pub struct KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS_0 { 1089 pub Numerator: i32, 1090 pub Denominator: i32, 1091 } 1092 #[cfg(feature = "Win32_Foundation")] 1093 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS_0 {} 1094 #[cfg(feature = "Win32_Foundation")] 1095 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS_0 { clone(&self) -> Self1096 fn clone(&self) -> Self { 1097 *self 1098 } 1099 } 1100 pub const KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK: u64 = 2u64; 1101 pub const KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_OFF: u64 = 0u64; 1102 #[repr(C)] 1103 pub struct KSCAMERA_EXTENDEDPROP_CAMERAOFFSET { 1104 pub PitchAngle: i32, 1105 pub YawAngle: i32, 1106 pub Flag: u32, 1107 pub Reserved: u32, 1108 } 1109 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_CAMERAOFFSET {} 1110 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_CAMERAOFFSET { clone(&self) -> Self1111 fn clone(&self) -> Self { 1112 *self 1113 } 1114 } 1115 pub const KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL: u64 = 9223372036854775808u64; 1116 pub const KSCAMERA_EXTENDEDPROP_CAPS_CANCELLABLE: u64 = 4611686018427387904u64; 1117 pub const KSCAMERA_EXTENDEDPROP_CAPS_MASK: u64 = 18374686479671623680u64; 1118 pub const KSCAMERA_EXTENDEDPROP_CAPS_RESERVED: u64 = 18374686479671623680u64; 1119 pub const KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_AUTOFACEFRAMING: u64 = 1u64; 1120 #[repr(C)] 1121 pub struct KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_CONFIGCAPS { 1122 pub ResolutionX: i32, 1123 pub ResolutionY: i32, 1124 pub PorchTop: i32, 1125 pub PorchLeft: i32, 1126 pub PorchBottom: i32, 1127 pub PorchRight: i32, 1128 pub NonUpscalingWindowSize: i32, 1129 pub MinWindowSize: i32, 1130 pub MaxWindowSize: i32, 1131 pub Reserved: i32, 1132 } 1133 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_CONFIGCAPS {} 1134 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_CONFIGCAPS { clone(&self) -> Self1135 fn clone(&self) -> Self { 1136 *self 1137 } 1138 } 1139 #[repr(C)] 1140 pub struct KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_CONFIGCAPSHEADER { 1141 pub Size: u32, 1142 pub Count: u32, 1143 } 1144 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_CONFIGCAPSHEADER {} 1145 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_CONFIGCAPSHEADER { clone(&self) -> Self1146 fn clone(&self) -> Self { 1147 *self 1148 } 1149 } 1150 pub const KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_MANUAL: u64 = 0u64; 1151 #[repr(C)] 1152 pub struct KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_SETTING { 1153 pub OriginX: i32, 1154 pub OriginY: i32, 1155 pub WindowSize: i32, 1156 pub Reserved: u32, 1157 } 1158 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_SETTING {} 1159 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_SETTING { clone(&self) -> Self1160 fn clone(&self) -> Self { 1161 *self 1162 } 1163 } 1164 #[repr(C)] 1165 pub struct KSCAMERA_EXTENDEDPROP_EVCOMPENSATION { 1166 pub Mode: u32, 1167 pub Min: i32, 1168 pub Max: i32, 1169 pub Value: i32, 1170 pub Reserved: u64, 1171 } 1172 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_EVCOMPENSATION {} 1173 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_EVCOMPENSATION { clone(&self) -> Self1174 fn clone(&self) -> Self { 1175 *self 1176 } 1177 } 1178 pub const KSCAMERA_EXTENDEDPROP_EVCOMP_FULLSTEP: u64 = 16u64; 1179 pub const KSCAMERA_EXTENDEDPROP_EVCOMP_HALFSTEP: u64 = 8u64; 1180 pub const KSCAMERA_EXTENDEDPROP_EVCOMP_QUARTERSTEP: u64 = 2u64; 1181 pub const KSCAMERA_EXTENDEDPROP_EVCOMP_SIXTHSTEP: u64 = 1u64; 1182 pub const KSCAMERA_EXTENDEDPROP_EVCOMP_THIRDSTEP: u64 = 4u64; 1183 pub const KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF: u64 = 0u64; 1184 pub const KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON: u64 = 1u64; 1185 pub const KSCAMERA_EXTENDEDPROP_FACEAUTH_MODE_ALTERNATIVE_FRAME_ILLUMINATION: u64 = 2u64; 1186 pub const KSCAMERA_EXTENDEDPROP_FACEAUTH_MODE_BACKGROUND_SUBTRACTION: u64 = 4u64; 1187 pub const KSCAMERA_EXTENDEDPROP_FACEAUTH_MODE_DISABLED: u64 = 1u64; 1188 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_BLINK: u64 = 8u64; 1189 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_OFF: u64 = 0u64; 1190 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_ON: u64 = 1u64; 1191 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_PHOTO: u64 = 4u64; 1192 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_PREVIEW: u64 = 1u64; 1193 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_SMILE: u64 = 16u64; 1194 pub const KSCAMERA_EXTENDEDPROP_FACEDETECTION_VIDEO: u64 = 2u64; 1195 #[repr(C)] 1196 pub struct KSCAMERA_EXTENDEDPROP_FIELDOFVIEW { 1197 pub NormalizedFocalLengthX: u32, 1198 pub NormalizedFocalLengthY: u32, 1199 pub Flag: u32, 1200 pub Reserved: u32, 1201 } 1202 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_FIELDOFVIEW {} 1203 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_FIELDOFVIEW { clone(&self) -> Self1204 fn clone(&self) -> Self { 1205 *self 1206 } 1207 } 1208 pub const KSCAMERA_EXTENDEDPROP_FILTERSCOPE: u32 = 4294967295u32; 1209 pub const KSCAMERA_EXTENDEDPROP_FLAG_CANCELOPERATION: u64 = 9223372036854775808u64; 1210 pub const KSCAMERA_EXTENDEDPROP_FLAG_MASK: u64 = 18374686479671623680u64; 1211 pub const KSCAMERA_EXTENDEDPROP_FLASH_ASSISTANT_AUTO: u64 = 256u64; 1212 pub const KSCAMERA_EXTENDEDPROP_FLASH_ASSISTANT_OFF: u64 = 0u64; 1213 pub const KSCAMERA_EXTENDEDPROP_FLASH_ASSISTANT_ON: u64 = 128u64; 1214 pub const KSCAMERA_EXTENDEDPROP_FLASH_AUTO: u64 = 4u64; 1215 pub const KSCAMERA_EXTENDEDPROP_FLASH_AUTO_ADJUSTABLEPOWER: u64 = 8u64; 1216 pub const KSCAMERA_EXTENDEDPROP_FLASH_MULTIFLASHSUPPORTED: u64 = 64u64; 1217 pub const KSCAMERA_EXTENDEDPROP_FLASH_OFF: u64 = 0u64; 1218 pub const KSCAMERA_EXTENDEDPROP_FLASH_ON: u64 = 1u64; 1219 pub const KSCAMERA_EXTENDEDPROP_FLASH_ON_ADJUSTABLEPOWER: u64 = 2u64; 1220 pub const KSCAMERA_EXTENDEDPROP_FLASH_REDEYEREDUCTION: u64 = 16u64; 1221 pub const KSCAMERA_EXTENDEDPROP_FLASH_SINGLEFLASH: u64 = 32u64; 1222 pub const KSCAMERA_EXTENDEDPROP_FOCUSPRIORITY_OFF: u64 = 0u64; 1223 pub const KSCAMERA_EXTENDEDPROP_FOCUSPRIORITY_ON: u64 = 1u64; 1224 pub type KSCAMERA_EXTENDEDPROP_FOCUSSTATE = i32; 1225 pub const KSCAMERA_EXTENDEDPROP_FOCUSSTATE_UNINITIALIZED: KSCAMERA_EXTENDEDPROP_FOCUSSTATE = 0i32; 1226 pub const KSCAMERA_EXTENDEDPROP_FOCUSSTATE_LOST: KSCAMERA_EXTENDEDPROP_FOCUSSTATE = 1i32; 1227 pub const KSCAMERA_EXTENDEDPROP_FOCUSSTATE_SEARCHING: KSCAMERA_EXTENDEDPROP_FOCUSSTATE = 2i32; 1228 pub const KSCAMERA_EXTENDEDPROP_FOCUSSTATE_FOCUSED: KSCAMERA_EXTENDEDPROP_FOCUSSTATE = 3i32; 1229 pub const KSCAMERA_EXTENDEDPROP_FOCUSSTATE_FAILED: KSCAMERA_EXTENDEDPROP_FOCUSSTATE = 4i32; 1230 pub const KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS: u64 = 256u64; 1231 pub const KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUSLOCK: u64 = 512u64; 1232 pub const KSCAMERA_EXTENDEDPROP_FOCUS_DISTANCE_HYPERFOCAL: u64 = 33554432u64; 1233 pub const KSCAMERA_EXTENDEDPROP_FOCUS_DISTANCE_INFINITY: u64 = 16777216u64; 1234 pub const KSCAMERA_EXTENDEDPROP_FOCUS_DISTANCE_NEAREST: u64 = 67108864u64; 1235 pub const KSCAMERA_EXTENDEDPROP_FOCUS_DRIVERFALLBACK_OFF: u64 = 2048u64; 1236 pub const KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_FULLRANGE: u64 = 262144u64; 1237 pub const KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_HYPERFOCAL: u64 = 1048576u64; 1238 pub const KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_INFINITY: u64 = 524288u64; 1239 pub const KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_MACRO: u64 = 65536u64; 1240 pub const KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_NORMAL: u64 = 131072u64; 1241 pub const KSCAMERA_EXTENDEDPROP_FOCUS_REGIONBASED: u64 = 4096u64; 1242 pub const KSCAMERA_EXTENDEDPROP_FOCUS_UNLOCK: u64 = 1024u64; 1243 #[repr(C)] 1244 pub struct KSCAMERA_EXTENDEDPROP_HEADER { 1245 pub Version: u32, 1246 pub PinId: u32, 1247 pub Size: u32, 1248 pub Result: u32, 1249 pub Flags: u64, 1250 pub Capability: u64, 1251 } 1252 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_HEADER {} 1253 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_HEADER { clone(&self) -> Self1254 fn clone(&self) -> Self { 1255 *self 1256 } 1257 } 1258 pub const KSCAMERA_EXTENDEDPROP_HISTOGRAM_OFF: u64 = 0u64; 1259 pub const KSCAMERA_EXTENDEDPROP_HISTOGRAM_ON: u64 = 1u64; 1260 pub const KSCAMERA_EXTENDEDPROP_IRTORCHMODE_ALTERNATING_FRAME_ILLUMINATION: u64 = 4u64; 1261 pub const KSCAMERA_EXTENDEDPROP_IRTORCHMODE_ALWAYS_ON: u64 = 2u64; 1262 pub const KSCAMERA_EXTENDEDPROP_IRTORCHMODE_OFF: u64 = 1u64; 1263 pub const KSCAMERA_EXTENDEDPROP_ISO_100: u64 = 8u64; 1264 pub const KSCAMERA_EXTENDEDPROP_ISO_12800: u64 = 1024u64; 1265 pub const KSCAMERA_EXTENDEDPROP_ISO_1600: u64 = 128u64; 1266 pub const KSCAMERA_EXTENDEDPROP_ISO_200: u64 = 16u64; 1267 pub const KSCAMERA_EXTENDEDPROP_ISO_25600: u64 = 2048u64; 1268 pub const KSCAMERA_EXTENDEDPROP_ISO_3200: u64 = 256u64; 1269 pub const KSCAMERA_EXTENDEDPROP_ISO_400: u64 = 32u64; 1270 pub const KSCAMERA_EXTENDEDPROP_ISO_50: u64 = 2u64; 1271 pub const KSCAMERA_EXTENDEDPROP_ISO_6400: u64 = 512u64; 1272 pub const KSCAMERA_EXTENDEDPROP_ISO_80: u64 = 4u64; 1273 pub const KSCAMERA_EXTENDEDPROP_ISO_800: u64 = 64u64; 1274 pub const KSCAMERA_EXTENDEDPROP_ISO_AUTO: u64 = 1u64; 1275 pub const KSCAMERA_EXTENDEDPROP_ISO_MANUAL: u64 = 36028797018963968u64; 1276 #[repr(C)] 1277 pub struct KSCAMERA_EXTENDEDPROP_METADATAINFO { 1278 pub BufferAlignment: i32, 1279 pub MaxMetadataBufferSize: u32, 1280 } 1281 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_METADATAINFO {} 1282 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_METADATAINFO { clone(&self) -> Self1283 fn clone(&self) -> Self { 1284 *self 1285 } 1286 } 1287 pub const KSCAMERA_EXTENDEDPROP_METADATA_ALIGNMENTREQUIRED: u64 = 256u64; 1288 pub const KSCAMERA_EXTENDEDPROP_METADATA_MEMORYTYPE_MASK: u64 = 255u64; 1289 pub const KSCAMERA_EXTENDEDPROP_METADATA_SYSTEMMEMORY: u64 = 1u64; 1290 pub type KSCAMERA_EXTENDEDPROP_MetadataAlignment = i32; 1291 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_16: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 4i32; 1292 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_32: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 5i32; 1293 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_64: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 6i32; 1294 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_128: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 7i32; 1295 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_256: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 8i32; 1296 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_512: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 9i32; 1297 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_1024: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 10i32; 1298 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_2048: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 11i32; 1299 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_4096: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 12i32; 1300 pub const KSCAMERA_EXTENDEDPROP_MetadataAlignment_8192: KSCAMERA_EXTENDEDPROP_MetadataAlignment = 13i32; 1301 pub const KSCAMERA_EXTENDEDPROP_OIS_AUTO: u64 = 2u64; 1302 pub const KSCAMERA_EXTENDEDPROP_OIS_OFF: u64 = 0u64; 1303 pub const KSCAMERA_EXTENDEDPROP_OIS_ON: u64 = 1u64; 1304 pub const KSCAMERA_EXTENDEDPROP_OPTIMIZATION_DEFAULT: u64 = 0u64; 1305 pub const KSCAMERA_EXTENDEDPROP_OPTIMIZATION_LATENCY: u64 = 8u64; 1306 pub const KSCAMERA_EXTENDEDPROP_OPTIMIZATION_PHOTO: u64 = 1u64; 1307 pub const KSCAMERA_EXTENDEDPROP_OPTIMIZATION_POWER: u64 = 16u64; 1308 pub const KSCAMERA_EXTENDEDPROP_OPTIMIZATION_QUALITY: u64 = 4u64; 1309 pub const KSCAMERA_EXTENDEDPROP_OPTIMIZATION_VIDEO: u64 = 2u64; 1310 pub const KSCAMERA_EXTENDEDPROP_PHOTOCONFIRMATION_OFF: u64 = 0u64; 1311 pub const KSCAMERA_EXTENDEDPROP_PHOTOCONFIRMATION_ON: u64 = 1u64; 1312 #[repr(C)] 1313 pub struct KSCAMERA_EXTENDEDPROP_PHOTOMODE { 1314 pub RequestedHistoryFrames: u32, 1315 pub MaxHistoryFrames: u32, 1316 pub SubMode: u32, 1317 pub Reserved: u32, 1318 } 1319 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_PHOTOMODE {} 1320 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_PHOTOMODE { clone(&self) -> Self1321 fn clone(&self) -> Self { 1322 *self 1323 } 1324 } 1325 pub const KSCAMERA_EXTENDEDPROP_PHOTOMODE_NORMAL: u64 = 0u64; 1326 pub const KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE: u64 = 1u64; 1327 pub const KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_NONE: u32 = 0u32; 1328 pub const KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE_SUB_VARIABLE: u32 = 1u32; 1329 pub const KSCAMERA_EXTENDEDPROP_PHOTOTHUMBNAIL_16X: u64 = 8u64; 1330 pub const KSCAMERA_EXTENDEDPROP_PHOTOTHUMBNAIL_2X: u64 = 1u64; 1331 pub const KSCAMERA_EXTENDEDPROP_PHOTOTHUMBNAIL_4X: u64 = 2u64; 1332 pub const KSCAMERA_EXTENDEDPROP_PHOTOTHUMBNAIL_8X: u64 = 4u64; 1333 pub const KSCAMERA_EXTENDEDPROP_PHOTOTHUMBNAIL_DISABLE: u64 = 0u64; 1334 #[repr(C)] 1335 pub struct KSCAMERA_EXTENDEDPROP_PROFILE { 1336 pub ProfileId: ::windows_sys::core::GUID, 1337 pub Index: u32, 1338 pub Reserved: u32, 1339 } 1340 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_PROFILE {} 1341 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_PROFILE { clone(&self) -> Self1342 fn clone(&self) -> Self { 1343 *self 1344 } 1345 } 1346 pub const KSCAMERA_EXTENDEDPROP_RELATIVEPANELOPTIMIZATION_DYNAMIC: u64 = 2u64; 1347 pub const KSCAMERA_EXTENDEDPROP_RELATIVEPANELOPTIMIZATION_OFF: u64 = 0u64; 1348 pub const KSCAMERA_EXTENDEDPROP_RELATIVEPANELOPTIMIZATION_ON: u64 = 1u64; 1349 pub type KSCAMERA_EXTENDEDPROP_ROITYPE = i32; 1350 pub const KSCAMERA_EXTENDEDPROP_ROITYPE_UNKNOWN: KSCAMERA_EXTENDEDPROP_ROITYPE = 0i32; 1351 pub const KSCAMERA_EXTENDEDPROP_ROITYPE_FACE: KSCAMERA_EXTENDEDPROP_ROITYPE = 1i32; 1352 #[repr(C)] 1353 pub struct KSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPS { 1354 pub ControlId: u32, 1355 pub MaxNumberOfROIs: u32, 1356 pub Capability: u64, 1357 } 1358 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPS {} 1359 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPS { clone(&self) -> Self1360 fn clone(&self) -> Self { 1361 *self 1362 } 1363 } 1364 #[repr(C)] 1365 pub struct KSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPSHEADER { 1366 pub Size: u32, 1367 pub ConfigCapCount: u32, 1368 pub Reserved: u64, 1369 } 1370 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPSHEADER {} 1371 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPSHEADER { clone(&self) -> Self1372 fn clone(&self) -> Self { 1373 *self 1374 } 1375 } 1376 #[repr(C)] 1377 #[cfg(feature = "Win32_Foundation")] 1378 pub struct KSCAMERA_EXTENDEDPROP_ROI_EXPOSURE { 1379 pub ROIInfo: KSCAMERA_EXTENDEDPROP_ROI_INFO, 1380 pub Reserved: u64, 1381 } 1382 #[cfg(feature = "Win32_Foundation")] 1383 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_EXPOSURE {} 1384 #[cfg(feature = "Win32_Foundation")] 1385 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_EXPOSURE { clone(&self) -> Self1386 fn clone(&self) -> Self { 1387 *self 1388 } 1389 } 1390 #[repr(C)] 1391 #[cfg(feature = "Win32_Foundation")] 1392 pub struct KSCAMERA_EXTENDEDPROP_ROI_FOCUS { 1393 pub ROIInfo: KSCAMERA_EXTENDEDPROP_ROI_INFO, 1394 pub Reserved: u64, 1395 } 1396 #[cfg(feature = "Win32_Foundation")] 1397 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_FOCUS {} 1398 #[cfg(feature = "Win32_Foundation")] 1399 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_FOCUS { clone(&self) -> Self1400 fn clone(&self) -> Self { 1401 *self 1402 } 1403 } 1404 #[repr(C)] 1405 #[cfg(feature = "Win32_Foundation")] 1406 pub struct KSCAMERA_EXTENDEDPROP_ROI_INFO { 1407 pub Region: super::super::Foundation::RECT, 1408 pub Flags: u64, 1409 pub Weight: i32, 1410 pub RegionOfInterestType: i32, 1411 } 1412 #[cfg(feature = "Win32_Foundation")] 1413 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_INFO {} 1414 #[cfg(feature = "Win32_Foundation")] 1415 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_INFO { clone(&self) -> Self1416 fn clone(&self) -> Self { 1417 *self 1418 } 1419 } 1420 #[repr(C)] 1421 pub struct KSCAMERA_EXTENDEDPROP_ROI_ISPCONTROL { 1422 pub ControlId: u32, 1423 pub ROICount: u32, 1424 pub Result: u32, 1425 pub Reserved: u32, 1426 } 1427 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_ISPCONTROL {} 1428 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_ISPCONTROL { clone(&self) -> Self1429 fn clone(&self) -> Self { 1430 *self 1431 } 1432 } 1433 #[repr(C)] 1434 pub struct KSCAMERA_EXTENDEDPROP_ROI_ISPCONTROLHEADER { 1435 pub Size: u32, 1436 pub ControlCount: u32, 1437 pub Reserved: u64, 1438 } 1439 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_ISPCONTROLHEADER {} 1440 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_ISPCONTROLHEADER { clone(&self) -> Self1441 fn clone(&self) -> Self { 1442 *self 1443 } 1444 } 1445 #[repr(C)] 1446 #[cfg(feature = "Win32_Foundation")] 1447 pub struct KSCAMERA_EXTENDEDPROP_ROI_WHITEBALANCE { 1448 pub ROIInfo: KSCAMERA_EXTENDEDPROP_ROI_INFO, 1449 pub Reserved: u64, 1450 } 1451 #[cfg(feature = "Win32_Foundation")] 1452 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_ROI_WHITEBALANCE {} 1453 #[cfg(feature = "Win32_Foundation")] 1454 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_ROI_WHITEBALANCE { clone(&self) -> Self1455 fn clone(&self) -> Self { 1456 *self 1457 } 1458 } 1459 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_AUTO: u64 = 0u64; 1460 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_BACKLIT: u64 = 1024u64; 1461 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_BEACH: u64 = 32u64; 1462 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_CANDLELIGHT: u64 = 128u64; 1463 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_LANDSCAPE: u64 = 256u64; 1464 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_MACRO: u64 = 1u64; 1465 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_MANUAL: u64 = 36028797018963968u64; 1466 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_NIGHT: u64 = 16u64; 1467 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_NIGHTPORTRAIT: u64 = 512u64; 1468 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_PORTRAIT: u64 = 2u64; 1469 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_SNOW: u64 = 8u64; 1470 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_SPORT: u64 = 4u64; 1471 pub const KSCAMERA_EXTENDEDPROP_SCENEMODE_SUNSET: u64 = 64u64; 1472 pub const KSCAMERA_EXTENDEDPROP_SECUREMODE_DISABLED: u64 = 1u64; 1473 pub const KSCAMERA_EXTENDEDPROP_SECUREMODE_ENABLED: u64 = 2u64; 1474 #[repr(C)] 1475 pub struct KSCAMERA_EXTENDEDPROP_VALUE { 1476 pub Value: KSCAMERA_EXTENDEDPROP_VALUE_0, 1477 } 1478 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_VALUE {} 1479 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_VALUE { clone(&self) -> Self1480 fn clone(&self) -> Self { 1481 *self 1482 } 1483 } 1484 #[repr(C)] 1485 pub union KSCAMERA_EXTENDEDPROP_VALUE_0 { 1486 pub dbl: f64, 1487 pub ull: u64, 1488 pub ul: u32, 1489 pub ratio: u64, 1490 pub l: i32, 1491 pub ll: i64, 1492 } 1493 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_VALUE_0 {} 1494 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_VALUE_0 { clone(&self) -> Self1495 fn clone(&self) -> Self { 1496 *self 1497 } 1498 } 1499 pub const KSCAMERA_EXTENDEDPROP_VFR_OFF: u64 = 0u64; 1500 pub const KSCAMERA_EXTENDEDPROP_VFR_ON: u64 = 1u64; 1501 pub const KSCAMERA_EXTENDEDPROP_VIDEOHDR_AUTO: u64 = 2u64; 1502 pub const KSCAMERA_EXTENDEDPROP_VIDEOHDR_OFF: u64 = 0u64; 1503 pub const KSCAMERA_EXTENDEDPROP_VIDEOHDR_ON: u64 = 1u64; 1504 pub const KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO: u64 = 1u64; 1505 pub const KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK: u64 = 4u64; 1506 pub const KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL: u64 = 2u64; 1507 #[repr(C)] 1508 pub struct KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING { 1509 pub Mode: u32, 1510 pub Min: i32, 1511 pub Max: i32, 1512 pub Step: i32, 1513 pub VideoProc: KSCAMERA_EXTENDEDPROP_VALUE, 1514 pub Reserved: u64, 1515 } 1516 impl ::core::marker::Copy for KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING {} 1517 impl ::core::clone::Clone for KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING { clone(&self) -> Self1518 fn clone(&self) -> Self { 1519 *self 1520 } 1521 } 1522 pub const KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_AUTO: u64 = 2u64; 1523 pub const KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_OFF: u64 = 0u64; 1524 pub const KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_ON: u64 = 1u64; 1525 pub const KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO: u64 = 1u64; 1526 pub const KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF: u64 = 2u64; 1527 pub const KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON: u64 = 4u64; 1528 pub const KSCAMERA_EXTENDEDPROP_VIDEOTORCH_OFF: u64 = 0u64; 1529 pub const KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON: u64 = 1u64; 1530 pub const KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON_ADJUSTABLEPOWER: u64 = 2u64; 1531 pub const KSCAMERA_EXTENDEDPROP_WARMSTART_MODE_DISABLED: u64 = 0u64; 1532 pub const KSCAMERA_EXTENDEDPROP_WARMSTART_MODE_ENABLED: u64 = 1u64; 1533 pub type KSCAMERA_EXTENDEDPROP_WBPRESET = i32; 1534 pub const KSCAMERA_EXTENDEDPROP_WBPRESET_CLOUDY: KSCAMERA_EXTENDEDPROP_WBPRESET = 1i32; 1535 pub const KSCAMERA_EXTENDEDPROP_WBPRESET_DAYLIGHT: KSCAMERA_EXTENDEDPROP_WBPRESET = 2i32; 1536 pub const KSCAMERA_EXTENDEDPROP_WBPRESET_FLASH: KSCAMERA_EXTENDEDPROP_WBPRESET = 3i32; 1537 pub const KSCAMERA_EXTENDEDPROP_WBPRESET_FLUORESCENT: KSCAMERA_EXTENDEDPROP_WBPRESET = 4i32; 1538 pub const KSCAMERA_EXTENDEDPROP_WBPRESET_TUNGSTEN: KSCAMERA_EXTENDEDPROP_WBPRESET = 5i32; 1539 pub const KSCAMERA_EXTENDEDPROP_WBPRESET_CANDLELIGHT: KSCAMERA_EXTENDEDPROP_WBPRESET = 6i32; 1540 pub type KSCAMERA_EXTENDEDPROP_WHITEBALANCE_MODE = i32; 1541 pub const KSCAMERA_EXTENDEDPROP_WHITEBALANCE_TEMPERATURE: KSCAMERA_EXTENDEDPROP_WHITEBALANCE_MODE = 1i32; 1542 pub const KSCAMERA_EXTENDEDPROP_WHITEBALANCE_PRESET: KSCAMERA_EXTENDEDPROP_WHITEBALANCE_MODE = 2i32; 1543 pub const KSCAMERA_EXTENDEDPROP_ZOOM_DEFAULT: u64 = 0u64; 1544 pub const KSCAMERA_EXTENDEDPROP_ZOOM_DIRECT: u64 = 1u64; 1545 pub const KSCAMERA_EXTENDEDPROP_ZOOM_SMOOTH: u64 = 2u64; 1546 #[repr(C)] 1547 pub struct KSCAMERA_MAXVIDEOFPS_FORPHOTORES { 1548 pub PhotoResWidth: u32, 1549 pub PhotoResHeight: u32, 1550 pub PreviewFPSNum: u32, 1551 pub PreviewFPSDenom: u32, 1552 pub CaptureFPSNum: u32, 1553 pub CaptureFPSDenom: u32, 1554 } 1555 impl ::core::marker::Copy for KSCAMERA_MAXVIDEOFPS_FORPHOTORES {} 1556 impl ::core::clone::Clone for KSCAMERA_MAXVIDEOFPS_FORPHOTORES { clone(&self) -> Self1557 fn clone(&self) -> Self { 1558 *self 1559 } 1560 } 1561 #[repr(C)] 1562 #[cfg(feature = "Win32_Foundation")] 1563 pub struct KSCAMERA_METADATA_BACKGROUNDSEGMENTATIONMASK { 1564 pub Header: KSCAMERA_METADATA_ITEMHEADER, 1565 pub MaskCoverageBoundingBox: super::super::Foundation::RECT, 1566 pub MaskResolution: super::super::Foundation::SIZE, 1567 pub ForegroundBoundingBox: super::super::Foundation::RECT, 1568 pub MaskData: [u8; 1], 1569 } 1570 #[cfg(feature = "Win32_Foundation")] 1571 impl ::core::marker::Copy for KSCAMERA_METADATA_BACKGROUNDSEGMENTATIONMASK {} 1572 #[cfg(feature = "Win32_Foundation")] 1573 impl ::core::clone::Clone for KSCAMERA_METADATA_BACKGROUNDSEGMENTATIONMASK { clone(&self) -> Self1574 fn clone(&self) -> Self { 1575 *self 1576 } 1577 } 1578 #[repr(C)] 1579 pub struct KSCAMERA_METADATA_CAPTURESTATS { 1580 pub Header: KSCAMERA_METADATA_ITEMHEADER, 1581 pub Flags: u32, 1582 pub Reserved: u32, 1583 pub ExposureTime: u64, 1584 pub ExposureCompensationFlags: u64, 1585 pub ExposureCompensationValue: i32, 1586 pub IsoSpeed: u32, 1587 pub FocusState: u32, 1588 pub LensPosition: u32, 1589 pub WhiteBalance: u32, 1590 pub Flash: u32, 1591 pub FlashPower: u32, 1592 pub ZoomFactor: u32, 1593 pub SceneMode: u64, 1594 pub SensorFramerate: u64, 1595 } 1596 impl ::core::marker::Copy for KSCAMERA_METADATA_CAPTURESTATS {} 1597 impl ::core::clone::Clone for KSCAMERA_METADATA_CAPTURESTATS { clone(&self) -> Self1598 fn clone(&self) -> Self { 1599 *self 1600 } 1601 } 1602 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_EXPOSURECOMPENSATION: u32 = 2u32; 1603 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_EXPOSURETIME: u32 = 1u32; 1604 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_FLASH: u32 = 64u32; 1605 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_FLASHPOWER: u32 = 128u32; 1606 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_FOCUSSTATE: u32 = 8u32; 1607 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_ISOSPEED: u32 = 4u32; 1608 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_LENSPOSITION: u32 = 16u32; 1609 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_SCENEMODE: u32 = 512u32; 1610 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_SENSORFRAMERATE: u32 = 1024u32; 1611 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_WHITEBALANCE: u32 = 32u32; 1612 pub const KSCAMERA_METADATA_CAPTURESTATS_FLAG_ZOOMFACTOR: u32 = 256u32; 1613 #[repr(C)] 1614 pub struct KSCAMERA_METADATA_DIGITALWINDOW { 1615 pub Header: KSCAMERA_METADATA_ITEMHEADER, 1616 pub Window: KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_SETTING, 1617 } 1618 impl ::core::marker::Copy for KSCAMERA_METADATA_DIGITALWINDOW {} 1619 impl ::core::clone::Clone for KSCAMERA_METADATA_DIGITALWINDOW { clone(&self) -> Self1620 fn clone(&self) -> Self { 1621 *self 1622 } 1623 } 1624 #[repr(C)] 1625 pub struct KSCAMERA_METADATA_FRAMEILLUMINATION { 1626 pub Header: KSCAMERA_METADATA_ITEMHEADER, 1627 pub Flags: u32, 1628 pub Reserved: u32, 1629 } 1630 impl ::core::marker::Copy for KSCAMERA_METADATA_FRAMEILLUMINATION {} 1631 impl ::core::clone::Clone for KSCAMERA_METADATA_FRAMEILLUMINATION { clone(&self) -> Self1632 fn clone(&self) -> Self { 1633 *self 1634 } 1635 } 1636 pub const KSCAMERA_METADATA_FRAMEILLUMINATION_FLAG_ON: u32 = 1u32; 1637 #[repr(C)] 1638 pub struct KSCAMERA_METADATA_ITEMHEADER { 1639 pub MetadataId: u32, 1640 pub Size: u32, 1641 } 1642 impl ::core::marker::Copy for KSCAMERA_METADATA_ITEMHEADER {} 1643 impl ::core::clone::Clone for KSCAMERA_METADATA_ITEMHEADER { clone(&self) -> Self1644 fn clone(&self) -> Self { 1645 *self 1646 } 1647 } 1648 #[repr(C)] 1649 pub struct KSCAMERA_METADATA_PHOTOCONFIRMATION { 1650 pub Header: KSCAMERA_METADATA_ITEMHEADER, 1651 pub PhotoConfirmationIndex: u32, 1652 pub Reserved: u32, 1653 } 1654 impl ::core::marker::Copy for KSCAMERA_METADATA_PHOTOCONFIRMATION {} 1655 impl ::core::clone::Clone for KSCAMERA_METADATA_PHOTOCONFIRMATION { clone(&self) -> Self1656 fn clone(&self) -> Self { 1657 *self 1658 } 1659 } 1660 pub type KSCAMERA_MetadataId = i32; 1661 pub const MetadataId_Standard_Start: KSCAMERA_MetadataId = 1i32; 1662 pub const MetadataId_PhotoConfirmation: KSCAMERA_MetadataId = 1i32; 1663 pub const MetadataId_UsbVideoHeader: KSCAMERA_MetadataId = 2i32; 1664 pub const MetadataId_CaptureStats: KSCAMERA_MetadataId = 3i32; 1665 pub const MetadataId_CameraExtrinsics: KSCAMERA_MetadataId = 4i32; 1666 pub const MetadataId_CameraIntrinsics: KSCAMERA_MetadataId = 5i32; 1667 pub const MetadataId_FrameIllumination: KSCAMERA_MetadataId = 6i32; 1668 pub const MetadataId_DigitalWindow: KSCAMERA_MetadataId = 7i32; 1669 pub const MetadataId_BackgroundSegmentationMask: KSCAMERA_MetadataId = 8i32; 1670 pub const MetadataId_Standard_End: KSCAMERA_MetadataId = 8i32; 1671 pub const MetadataId_Custom_Start: KSCAMERA_MetadataId = -2147483648i32; 1672 pub const KSCAMERA_PERFRAMESETTING_AUTO: u64 = 4294967296u64; 1673 #[repr(C)] 1674 pub struct KSCAMERA_PERFRAMESETTING_CAP_HEADER { 1675 pub Size: u32, 1676 pub ItemCount: u32, 1677 pub Flags: u64, 1678 } 1679 impl ::core::marker::Copy for KSCAMERA_PERFRAMESETTING_CAP_HEADER {} 1680 impl ::core::clone::Clone for KSCAMERA_PERFRAMESETTING_CAP_HEADER { clone(&self) -> Self1681 fn clone(&self) -> Self { 1682 *self 1683 } 1684 } 1685 #[repr(C)] 1686 pub struct KSCAMERA_PERFRAMESETTING_CAP_ITEM_HEADER { 1687 pub Size: u32, 1688 pub Type: u32, 1689 pub Flags: u64, 1690 } 1691 impl ::core::marker::Copy for KSCAMERA_PERFRAMESETTING_CAP_ITEM_HEADER {} 1692 impl ::core::clone::Clone for KSCAMERA_PERFRAMESETTING_CAP_ITEM_HEADER { clone(&self) -> Self1693 fn clone(&self) -> Self { 1694 *self 1695 } 1696 } 1697 #[repr(C)] 1698 pub struct KSCAMERA_PERFRAMESETTING_CUSTOM_ITEM { 1699 pub Size: u32, 1700 pub Reserved: u32, 1701 pub Id: ::windows_sys::core::GUID, 1702 } 1703 impl ::core::marker::Copy for KSCAMERA_PERFRAMESETTING_CUSTOM_ITEM {} 1704 impl ::core::clone::Clone for KSCAMERA_PERFRAMESETTING_CUSTOM_ITEM { clone(&self) -> Self1705 fn clone(&self) -> Self { 1706 *self 1707 } 1708 } 1709 #[repr(C)] 1710 pub struct KSCAMERA_PERFRAMESETTING_FRAME_HEADER { 1711 pub Size: u32, 1712 pub Id: u32, 1713 pub ItemCount: u32, 1714 pub Reserved: u32, 1715 } 1716 impl ::core::marker::Copy for KSCAMERA_PERFRAMESETTING_FRAME_HEADER {} 1717 impl ::core::clone::Clone for KSCAMERA_PERFRAMESETTING_FRAME_HEADER { clone(&self) -> Self1718 fn clone(&self) -> Self { 1719 *self 1720 } 1721 } 1722 #[repr(C)] 1723 pub struct KSCAMERA_PERFRAMESETTING_HEADER { 1724 pub Size: u32, 1725 pub FrameCount: u32, 1726 pub Id: ::windows_sys::core::GUID, 1727 pub Flags: u64, 1728 pub LoopCount: u32, 1729 pub Reserved: u32, 1730 } 1731 impl ::core::marker::Copy for KSCAMERA_PERFRAMESETTING_HEADER {} 1732 impl ::core::clone::Clone for KSCAMERA_PERFRAMESETTING_HEADER { clone(&self) -> Self1733 fn clone(&self) -> Self { 1734 *self 1735 } 1736 } 1737 #[repr(C)] 1738 pub struct KSCAMERA_PERFRAMESETTING_ITEM_HEADER { 1739 pub Size: u32, 1740 pub Type: u32, 1741 pub Flags: u64, 1742 } 1743 impl ::core::marker::Copy for KSCAMERA_PERFRAMESETTING_ITEM_HEADER {} 1744 impl ::core::clone::Clone for KSCAMERA_PERFRAMESETTING_ITEM_HEADER { clone(&self) -> Self1745 fn clone(&self) -> Self { 1746 *self 1747 } 1748 } 1749 pub type KSCAMERA_PERFRAMESETTING_ITEM_TYPE = i32; 1750 pub const KSCAMERA_PERFRAMESETTING_ITEM_EXPOSURE_TIME: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 1i32; 1751 pub const KSCAMERA_PERFRAMESETTING_ITEM_FLASH: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 2i32; 1752 pub const KSCAMERA_PERFRAMESETTING_ITEM_EXPOSURE_COMPENSATION: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 3i32; 1753 pub const KSCAMERA_PERFRAMESETTING_ITEM_ISO: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 4i32; 1754 pub const KSCAMERA_PERFRAMESETTING_ITEM_FOCUS: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 5i32; 1755 pub const KSCAMERA_PERFRAMESETTING_ITEM_PHOTOCONFIRMATION: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 6i32; 1756 pub const KSCAMERA_PERFRAMESETTING_ITEM_CUSTOM: KSCAMERA_PERFRAMESETTING_ITEM_TYPE = 7i32; 1757 pub const KSCAMERA_PERFRAMESETTING_MANUAL: u64 = 8589934592u64; 1758 #[repr(C)] 1759 pub struct KSCAMERA_PROFILE_CONCURRENCYINFO { 1760 pub ReferenceGuid: ::windows_sys::core::GUID, 1761 pub Reserved: u32, 1762 pub ProfileCount: u32, 1763 pub Profiles: *mut KSCAMERA_PROFILE_INFO, 1764 } 1765 impl ::core::marker::Copy for KSCAMERA_PROFILE_CONCURRENCYINFO {} 1766 impl ::core::clone::Clone for KSCAMERA_PROFILE_CONCURRENCYINFO { clone(&self) -> Self1767 fn clone(&self) -> Self { 1768 *self 1769 } 1770 } 1771 #[repr(C)] 1772 pub struct KSCAMERA_PROFILE_INFO { 1773 pub ProfileId: ::windows_sys::core::GUID, 1774 pub Index: u32, 1775 pub PinCount: u32, 1776 pub Pins: *mut KSCAMERA_PROFILE_PININFO, 1777 } 1778 impl ::core::marker::Copy for KSCAMERA_PROFILE_INFO {} 1779 impl ::core::clone::Clone for KSCAMERA_PROFILE_INFO { clone(&self) -> Self1780 fn clone(&self) -> Self { 1781 *self 1782 } 1783 } 1784 #[repr(C)] 1785 pub struct KSCAMERA_PROFILE_MEDIAINFO { 1786 pub Resolution: KSCAMERA_PROFILE_MEDIAINFO_1, 1787 pub MaxFrameRate: KSCAMERA_PROFILE_MEDIAINFO_0, 1788 pub Flags: u64, 1789 pub Data0: u32, 1790 pub Data1: u32, 1791 pub Data2: u32, 1792 pub Data3: u32, 1793 } 1794 impl ::core::marker::Copy for KSCAMERA_PROFILE_MEDIAINFO {} 1795 impl ::core::clone::Clone for KSCAMERA_PROFILE_MEDIAINFO { clone(&self) -> Self1796 fn clone(&self) -> Self { 1797 *self 1798 } 1799 } 1800 #[repr(C)] 1801 pub struct KSCAMERA_PROFILE_MEDIAINFO_0 { 1802 pub Numerator: u32, 1803 pub Denominator: u32, 1804 } 1805 impl ::core::marker::Copy for KSCAMERA_PROFILE_MEDIAINFO_0 {} 1806 impl ::core::clone::Clone for KSCAMERA_PROFILE_MEDIAINFO_0 { clone(&self) -> Self1807 fn clone(&self) -> Self { 1808 *self 1809 } 1810 } 1811 #[repr(C)] 1812 pub struct KSCAMERA_PROFILE_MEDIAINFO_1 { 1813 pub X: u32, 1814 pub Y: u32, 1815 } 1816 impl ::core::marker::Copy for KSCAMERA_PROFILE_MEDIAINFO_1 {} 1817 impl ::core::clone::Clone for KSCAMERA_PROFILE_MEDIAINFO_1 { clone(&self) -> Self1818 fn clone(&self) -> Self { 1819 *self 1820 } 1821 } 1822 #[repr(C)] 1823 pub struct KSCAMERA_PROFILE_PININFO { 1824 pub PinCategory: ::windows_sys::core::GUID, 1825 pub Anonymous: KSCAMERA_PROFILE_PININFO_0, 1826 pub MediaInfoCount: u32, 1827 pub MediaInfos: *mut KSCAMERA_PROFILE_MEDIAINFO, 1828 } 1829 impl ::core::marker::Copy for KSCAMERA_PROFILE_PININFO {} 1830 impl ::core::clone::Clone for KSCAMERA_PROFILE_PININFO { clone(&self) -> Self1831 fn clone(&self) -> Self { 1832 *self 1833 } 1834 } 1835 #[repr(C)] 1836 pub union KSCAMERA_PROFILE_PININFO_0 { 1837 pub Anonymous: KSCAMERA_PROFILE_PININFO_0_0, 1838 pub Reserved: u32, 1839 } 1840 impl ::core::marker::Copy for KSCAMERA_PROFILE_PININFO_0 {} 1841 impl ::core::clone::Clone for KSCAMERA_PROFILE_PININFO_0 { clone(&self) -> Self1842 fn clone(&self) -> Self { 1843 *self 1844 } 1845 } 1846 #[repr(C)] 1847 pub struct KSCAMERA_PROFILE_PININFO_0_0 { 1848 pub PinIndex: u16, 1849 pub ProfileSensorType: u16, 1850 } 1851 impl ::core::marker::Copy for KSCAMERA_PROFILE_PININFO_0_0 {} 1852 impl ::core::clone::Clone for KSCAMERA_PROFILE_PININFO_0_0 { clone(&self) -> Self1853 fn clone(&self) -> Self { 1854 *self 1855 } 1856 } 1857 pub const KSCATEGORY_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] }; 1858 pub const KSCATEGORY_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1771351300, data2: 37871, data3: 4560, data4: [163, 204, 0, 160, 201, 34, 49, 150] }; 1859 pub const KSCATEGORY_BRIDGE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 140181248, data2: 25294, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1860 pub const KSCATEGORY_CAPTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1709733693, data2: 36694, data3: 4560, data4: [163, 185, 0, 160, 201, 34, 49, 150] }; 1861 pub const KSCATEGORY_CLOCK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1394025600, data2: 18321, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1862 pub const KSCATEGORY_COMMUNICATIONSTRANSFORM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3474840108, data2: 38723, data3: 4560, data4: [163, 238, 0, 160, 201, 34, 49, 150] }; 1863 pub const KSCATEGORY_CROSSBAR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865089, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; 1864 pub const KSCATEGORY_DATACOMPRESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 512018688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1865 pub const KSCATEGORY_DATADECOMPRESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 656518688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1866 pub const KSCATEGORY_DATATRANSFORM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 783318688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1867 pub const KSCATEGORY_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1868 data1: 426286070, 1869 data2: 50052, 1870 data3: 18685, 1871 data4: [173, 81, 144, 229, 140, 121, 247, 11], 1872 }; 1873 pub const KSCATEGORY_ESCALANTE_PLATFORM_DRIVER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1962127016, data2: 38760, data3: 4561, data4: [142, 7, 0, 160, 201, 94, 194, 46] }; 1874 pub const KSCATEGORY_FILESYSTEM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1980755294, data2: 37719, data3: 4560, data4: [163, 204, 0, 160, 201, 34, 49, 150] }; 1875 pub const KSCATEGORY_INTERFACETRANSFORM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3474840109, data2: 38723, data3: 4560, data4: [163, 238, 0, 160, 201, 34, 49, 150] }; 1876 pub const KSCATEGORY_MEDIUMTRANSFORM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3474840110, data2: 38723, data3: 4560, data4: [163, 238, 0, 160, 201, 34, 49, 150] }; 1877 pub const KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1878 data1: 2198488306, 1879 data2: 41773, 1880 data3: 18283, 1881 data4: [190, 151, 66, 132, 86, 115, 179, 90], 1882 }; 1883 pub const KSCATEGORY_MIXER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2910886912, data2: 31624, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1884 pub const KSCATEGORY_MULTIPLEXER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2052973011, data2: 417, data3: 17708, data4: [180, 129, 79, 162, 185, 98, 113, 232] }; 1885 pub const KSCATEGORY_NETWORK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1741278268, data2: 27076, data3: 4562, data4: [135, 89, 0, 160, 201, 34, 49, 150] }; 1886 pub const KSCATEGORY_NETWORK_CAMERA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1887 data1: 3089335890, 1888 data2: 46336, 1889 data3: 16875, 1890 data4: [180, 243, 66, 52, 247, 245, 174, 153], 1891 }; 1892 pub const KSCATEGORY_PROXY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2548804298, data2: 38333, data3: 4560, data4: [163, 234, 0, 160, 201, 34, 49, 150] }; 1893 pub const KSCATEGORY_QUALITY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2548804299, data2: 38333, data3: 4560, data4: [163, 234, 0, 160, 201, 34, 49, 150] }; 1894 pub const KSCATEGORY_REALTIME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3943784444, data2: 4296, data3: 18788, data4: [131, 29, 109, 203, 2, 230, 242, 63] }; 1895 pub const KSCATEGORY_RENDER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1709733694, data2: 36694, data3: 4560, data4: [163, 185, 0, 160, 201, 34, 49, 150] }; 1896 pub const KSCATEGORY_SENSOR_CAMERA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 619008727, data2: 25891, data3: 18423, data4: [166, 71, 211, 70, 91, 241, 245, 202] }; 1897 pub const KSCATEGORY_SENSOR_GROUP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1721528852, data2: 2696, data3: 17169, data4: [167, 243, 78, 121, 130, 14, 51, 189] }; 1898 pub const KSCATEGORY_SPLITTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 172118688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 1899 pub const KSCATEGORY_TEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1771351302, data2: 37871, data3: 4560, data4: [163, 204, 0, 160, 201, 34, 49, 150] }; 1900 pub const KSCATEGORY_TOPOLOGY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3718597184, data2: 7756, data3: 4561, data4: [160, 80, 64, 87, 5, 193, 0, 0] }; 1901 pub const KSCATEGORY_TVAUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865090, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; 1902 pub const KSCATEGORY_TVTUNER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865088, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; 1903 pub const KSCATEGORY_VBICODEC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 131782240, data2: 8945, data3: 4561, data4: [169, 244, 0, 192, 79, 187, 222, 143] }; 1904 pub const KSCATEGORY_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1771351301, data2: 37871, data3: 4560, data4: [163, 204, 0, 160, 201, 34, 49, 150] }; 1905 pub const KSCATEGORY_VIDEO_CAMERA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1906 data1: 3845273463, 1907 data2: 63862, 1908 data3: 20315, 1909 data4: [155, 85, 185, 70, 153, 196, 110, 68], 1910 }; 1911 pub const KSCATEGORY_VIRTUAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 889449156, data2: 7974, data3: 4561, data4: [138, 176, 0, 160, 201, 34, 49, 150] }; 1912 pub const KSCATEGORY_VPMUX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865091, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; 1913 pub const KSCATEGORY_WDMAUD_USE_PIN_NAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1201994272, data2: 41553, data3: 4561, data4: [160, 80, 0, 0, 248, 0, 71, 136] }; 1914 #[repr(C)] 1915 pub struct KSCLOCK_CREATE { 1916 pub CreateFlags: u32, 1917 } 1918 impl ::core::marker::Copy for KSCLOCK_CREATE {} 1919 impl ::core::clone::Clone for KSCLOCK_CREATE { clone(&self) -> Self1920 fn clone(&self) -> Self { 1921 *self 1922 } 1923 } 1924 #[repr(C)] 1925 pub struct KSCOMPONENTID { 1926 pub Manufacturer: ::windows_sys::core::GUID, 1927 pub Product: ::windows_sys::core::GUID, 1928 pub Component: ::windows_sys::core::GUID, 1929 pub Name: ::windows_sys::core::GUID, 1930 pub Version: u32, 1931 pub Revision: u32, 1932 } 1933 impl ::core::marker::Copy for KSCOMPONENTID {} 1934 impl ::core::clone::Clone for KSCOMPONENTID { clone(&self) -> Self1935 fn clone(&self) -> Self { 1936 *self 1937 } 1938 } 1939 pub const KSCOMPONENTID_USBAUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2400351728, data2: 9961, data3: 16996, data4: [186, 77, 57, 255, 240, 29, 148, 170] }; 1940 #[repr(C)] 1941 pub struct KSCORRELATED_TIME { 1942 pub Time: i64, 1943 pub SystemTime: i64, 1944 } 1945 impl ::core::marker::Copy for KSCORRELATED_TIME {} 1946 impl ::core::clone::Clone for KSCORRELATED_TIME { clone(&self) -> Self1947 fn clone(&self) -> Self { 1948 *self 1949 } 1950 } 1951 pub const KSCREATE_ITEM_FREEONSTOP: u32 = 8u32; 1952 pub const KSCREATE_ITEM_NOPARAMETERS: u32 = 4u32; 1953 pub const KSCREATE_ITEM_SECURITYCHANGED: u32 = 1u32; 1954 pub const KSCREATE_ITEM_WILDCARD: u32 = 2u32; 1955 pub const KSCameraProfileSensorType_Custom: u32 = 128u32; 1956 pub const KSCameraProfileSensorType_Depth: u32 = 4u32; 1957 pub const KSCameraProfileSensorType_ImageSegmentation: u32 = 16u32; 1958 pub const KSCameraProfileSensorType_Infrared: u32 = 2u32; 1959 pub const KSCameraProfileSensorType_PoseTracking: u32 = 8u32; 1960 pub const KSCameraProfileSensorType_RGB: u32 = 1u32; 1961 #[repr(C)] 1962 pub union KSDATAFORMAT { 1963 pub Anonymous: KSDATAFORMAT_0, 1964 pub Alignment: i64, 1965 } 1966 impl ::core::marker::Copy for KSDATAFORMAT {} 1967 impl ::core::clone::Clone for KSDATAFORMAT { clone(&self) -> Self1968 fn clone(&self) -> Self { 1969 *self 1970 } 1971 } 1972 #[repr(C)] 1973 pub struct KSDATAFORMAT_0 { 1974 pub FormatSize: u32, 1975 pub Flags: u32, 1976 pub SampleSize: u32, 1977 pub Reserved: u32, 1978 pub MajorFormat: ::windows_sys::core::GUID, 1979 pub SubFormat: ::windows_sys::core::GUID, 1980 pub Specifier: ::windows_sys::core::GUID, 1981 } 1982 impl ::core::marker::Copy for KSDATAFORMAT_0 {} 1983 impl ::core::clone::Clone for KSDATAFORMAT_0 { clone(&self) -> Self1984 fn clone(&self) -> Self { 1985 *self 1986 } 1987 } 1988 pub const KSDATAFORMAT_BIT_ATTRIBUTES: u32 = 1u32; 1989 pub const KSDATAFORMAT_BIT_TEMPORAL_COMPRESSION: u32 = 0u32; 1990 pub const KSDATAFORMAT_SPECIFIER_AC3_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272804, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 1991 pub const KSDATAFORMAT_SPECIFIER_ANALOGVIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685344, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; 1992 pub const KSDATAFORMAT_SPECIFIER_DIALECT_AC3_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358773, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 1993 pub const KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358770, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 1994 pub const KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358769, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 1995 pub const KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358772, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 1996 pub const KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358771, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 1997 pub const KSDATAFORMAT_SPECIFIER_DSOUND: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1367707810, data2: 41348, data3: 4560, data4: [133, 34, 0, 192, 79, 217, 186, 243] }; 1998 pub const KSDATAFORMAT_SPECIFIER_FILEHANDLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1709733692, data2: 36694, data3: 4560, data4: [163, 185, 0, 160, 201, 34, 49, 150] }; 1999 pub const KSDATAFORMAT_SPECIFIER_FILENAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2860088128, data2: 59764, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2000 pub const KSDATAFORMAT_SPECIFIER_H264_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2001 data1: 538426885, 2002 data2: 26153, 2003 data3: 16968, 2004 data4: [170, 237, 126, 26, 71, 188, 155, 156], 2005 }; 2006 pub const KSDATAFORMAT_SPECIFIER_IMAGE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2007 data1: 1764729721, 2008 data2: 54248, 2009 data3: 18001, 2010 data4: [181, 180, 11, 148, 176, 19, 238, 175], 2011 }; 2012 pub const KSDATAFORMAT_SPECIFIER_JPEG_IMAGE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2013 data1: 1764729721, 2014 data2: 54248, 2015 data3: 18001, 2016 data4: [181, 180, 11, 148, 176, 19, 238, 175], 2017 }; 2018 pub const KSDATAFORMAT_SPECIFIER_LPCM_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272806, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2019 pub const KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694082, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; 2020 pub const KSDATAFORMAT_SPECIFIER_MPEG2_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272805, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2021 pub const KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272803, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2022 pub const KSDATAFORMAT_SPECIFIER_NONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 258217942, data2: 49944, data3: 4560, data4: [164, 63, 0, 160, 201, 34, 49, 150] }; 2023 pub const KSDATAFORMAT_SPECIFIER_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755296, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; 2024 pub const KSDATAFORMAT_SPECIFIER_VC_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2912473476, data2: 43715, data3: 4560, data4: [164, 28, 0, 160, 201, 34, 49, 150] }; 2025 pub const KSDATAFORMAT_SPECIFIER_VIDEOINFO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694080, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; 2026 pub const KSDATAFORMAT_SPECIFIER_VIDEOINFO2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755232, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; 2027 pub const KSDATAFORMAT_SPECIFIER_WAVEFORMATEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694081, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; 2028 pub const KSDATAFORMAT_SUBTYPE_AC3_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272620, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2029 pub const KSDATAFORMAT_SUBTYPE_ANALOG: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1840918928, data2: 26557, data3: 4559, data4: [160, 247, 0, 32, 175, 209, 86, 228] }; 2030 pub const KSDATAFORMAT_SUBTYPE_CC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 857820353, data2: 287, data3: 4562, data4: [180, 177, 0, 160, 209, 2, 207, 190] }; 2031 pub const KSDATAFORMAT_SUBTYPE_D16: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 80, data2: 4, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2032 pub const KSDATAFORMAT_SUBTYPE_DSS_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2695843714, data2: 57699, data3: 4560, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; 2033 pub const KSDATAFORMAT_SUBTYPE_DSS_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2695843713, data2: 57699, data3: 4560, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; 2034 pub const KSDATAFORMAT_SUBTYPE_DTS_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272627, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2035 pub const KSDATAFORMAT_SUBTYPE_IEC61937_AAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 6, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2036 pub const KSDATAFORMAT_SUBTYPE_IEC61937_ATRAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 8, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2037 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_DIGITAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 146, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2038 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_DIGITAL_PLUS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 10, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2039 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_DIGITAL_PLUS_ATMOS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 266, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2040 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_MAT20: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 268, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2041 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_MAT21: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 780, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2042 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_MLP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 12, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2043 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 13, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2044 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 8, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2045 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DTSX_E1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 267, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2046 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DTSX_E2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 779, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2047 pub const KSDATAFORMAT_SUBTYPE_IEC61937_DTS_HD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 11, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2048 pub const KSDATAFORMAT_SUBTYPE_IEC61937_MPEG1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2049 pub const KSDATAFORMAT_SUBTYPE_IEC61937_MPEG2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2050 pub const KSDATAFORMAT_SUBTYPE_IEC61937_MPEG3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2051 pub const KSDATAFORMAT_SUBTYPE_IEC61937_ONE_BIT_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 9, data2: 3306, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2052 pub const KSDATAFORMAT_SUBTYPE_IEC61937_WMA_PRO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 356, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2053 pub const KSDATAFORMAT_SUBTYPE_IMAGE_RGB32: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 22, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2054 pub const KSDATAFORMAT_SUBTYPE_JPEG: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 434415018, data2: 22114, data3: 20421, data4: [160, 192, 23, 88, 2, 142, 16, 87] }; 2055 pub const KSDATAFORMAT_SUBTYPE_L16: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 81, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2056 pub const KSDATAFORMAT_SUBTYPE_L16_CUSTOM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 81, data2: 32768, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2057 pub const KSDATAFORMAT_SUBTYPE_L16_IR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 81, data2: 2, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2058 pub const KSDATAFORMAT_SUBTYPE_L8: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 50, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2059 pub const KSDATAFORMAT_SUBTYPE_L8_CUSTOM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 50, data2: 32768, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2060 pub const KSDATAFORMAT_SUBTYPE_L8_IR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 50, data2: 2, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2061 pub const KSDATAFORMAT_SUBTYPE_LPCM_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272626, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2062 pub const KSDATAFORMAT_SUBTYPE_Line21_BytePair: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1854753314, data2: 12556, data3: 4560, data4: [183, 154, 0, 170, 0, 55, 103, 167] }; 2063 pub const KSDATAFORMAT_SUBTYPE_Line21_GOPPacket: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1854753315, data2: 12556, data3: 4560, data4: [183, 154, 0, 170, 0, 55, 103, 167] }; 2064 pub const KSDATAFORMAT_SUBTYPE_MIDI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 489039712, data2: 59735, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2065 pub const KSDATAFORMAT_SUBTYPE_MIDI_BUS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 748773280, data2: 27902, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2066 pub const KSDATAFORMAT_SUBTYPE_MJPG_CUSTOM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1196444237, data2: 32768, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2067 pub const KSDATAFORMAT_SUBTYPE_MJPG_DEPTH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1196444237, data2: 4, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2068 pub const KSDATAFORMAT_SUBTYPE_MJPG_IR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1196444237, data2: 2, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2069 pub const KSDATAFORMAT_SUBTYPE_MPEG1Packet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804480, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2070 pub const KSDATAFORMAT_SUBTYPE_MPEG1Payload: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804481, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2071 pub const KSDATAFORMAT_SUBTYPE_MPEG1Video: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804486, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2072 pub const KSDATAFORMAT_SUBTYPE_MPEG2_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272619, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2073 pub const KSDATAFORMAT_SUBTYPE_MPEG2_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272614, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2074 pub const KSDATAFORMAT_SUBTYPE_MPEGLAYER3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 85, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2075 pub const KSDATAFORMAT_SUBTYPE_MPEG_HEAAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5648, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2076 pub const KSDATAFORMAT_SUBTYPE_NABTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755298, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; 2077 pub const KSDATAFORMAT_SUBTYPE_NABTS_FEC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3881286817, data2: 14764, data3: 4561, data4: [169, 245, 0, 192, 79, 187, 222, 143] }; 2078 pub const KSDATAFORMAT_SUBTYPE_NONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804494, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2079 pub const KSDATAFORMAT_SUBTYPE_OVERLAY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804479, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2080 pub const KSDATAFORMAT_SUBTYPE_PCM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2081 pub const KSDATAFORMAT_SUBTYPE_RAW8: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3391150496, data2: 15934, data3: 4561, data4: [155, 249, 0, 192, 79, 187, 222, 191] }; 2082 pub const KSDATAFORMAT_SUBTYPE_RIFF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1234557678, data2: 40678, data3: 4560, data4: [164, 14, 0, 160, 201, 34, 49, 150] }; 2083 pub const KSDATAFORMAT_SUBTYPE_RIFFMIDI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1234557680, data2: 40678, data3: 4560, data4: [164, 14, 0, 160, 201, 34, 49, 150] }; 2084 pub const KSDATAFORMAT_SUBTYPE_RIFFWAVE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804491, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2085 pub const KSDATAFORMAT_SUBTYPE_SDDS_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272628, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2086 pub const KSDATAFORMAT_SUBTYPE_STANDARD_AC3_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358757, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2087 pub const KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358754, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2088 pub const KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358753, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2089 pub const KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358756, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2090 pub const KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358755, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2091 pub const KSDATAFORMAT_SUBTYPE_SUBPICTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272621, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2092 pub const KSDATAFORMAT_SUBTYPE_TELETEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755299, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; 2093 pub const KSDATAFORMAT_SUBTYPE_VPVBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1520134721, data2: 6690, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; 2094 pub const KSDATAFORMAT_SUBTYPE_VPVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1520134720, data2: 6690, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; 2095 pub const KSDATAFORMAT_SUBTYPE_WAVEFORMATEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2096 pub const KSDATAFORMAT_SUBTYPE_WMAUDIO2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 353, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2097 pub const KSDATAFORMAT_SUBTYPE_WMAUDIO3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 354, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2098 pub const KSDATAFORMAT_SUBTYPE_WMAUDIO_LOSSLESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 355, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2099 pub const KSDATAFORMAT_TYPE_ANALOGAUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685601, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; 2100 pub const KSDATAFORMAT_TYPE_ANALOGVIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685345, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; 2101 pub const KSDATAFORMAT_TYPE_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935963489, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2102 pub const KSDATAFORMAT_TYPE_AUXLine21Data: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1728768640, data2: 14978, data3: 4560, data4: [183, 155, 0, 170, 0, 55, 103, 167] }; 2103 pub const KSDATAFORMAT_TYPE_DVD_ENCRYPTED_PACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3976958314, data2: 1101, data3: 4561, data4: [170, 120, 0, 192, 79, 195, 29, 96] }; 2104 pub const KSDATAFORMAT_TYPE_IMAGE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1914145827, data2: 58459, data3: 4565, data4: [188, 42, 0, 176, 208, 243, 244, 171] }; 2105 pub const KSDATAFORMAT_TYPE_MIDI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935960429, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2106 pub const KSDATAFORMAT_TYPE_MPEG2_PES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272608, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2107 pub const KSDATAFORMAT_TYPE_MPEG2_PROGRAM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272610, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2108 pub const KSDATAFORMAT_TYPE_MPEG2_TRANSPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272611, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; 2109 pub const KSDATAFORMAT_TYPE_MUSIC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3878015840, data2: 25292, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2110 pub const KSDATAFORMAT_TYPE_NABTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3881286816, data2: 14764, data3: 4561, data4: [169, 245, 0, 192, 79, 187, 222, 143] }; 2111 pub const KSDATAFORMAT_TYPE_STANDARD_ELEMENTARY_STREAM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358737, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2112 pub const KSDATAFORMAT_TYPE_STANDARD_PACK_HEADER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358739, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2113 pub const KSDATAFORMAT_TYPE_STANDARD_PES_PACKET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358738, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; 2114 pub const KSDATAFORMAT_TYPE_STREAM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804483, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; 2115 pub const KSDATAFORMAT_TYPE_TEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1937012852, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2116 pub const KSDATAFORMAT_TYPE_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755297, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; 2117 pub const KSDATAFORMAT_TYPE_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935960438, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; 2118 #[repr(C)] 2119 pub struct KSDATARANGE_AUDIO { 2120 pub DataRange: KSDATAFORMAT, 2121 pub MaximumChannels: u32, 2122 pub MinimumBitsPerSample: u32, 2123 pub MaximumBitsPerSample: u32, 2124 pub MinimumSampleFrequency: u32, 2125 pub MaximumSampleFrequency: u32, 2126 } 2127 impl ::core::marker::Copy for KSDATARANGE_AUDIO {} 2128 impl ::core::clone::Clone for KSDATARANGE_AUDIO { clone(&self) -> Self2129 fn clone(&self) -> Self { 2130 *self 2131 } 2132 } 2133 pub const KSDATARANGE_BIT_ATTRIBUTES: u32 = 1u32; 2134 pub const KSDATARANGE_BIT_REQUIRED_ATTRIBUTES: u32 = 2u32; 2135 #[repr(C)] 2136 pub struct KSDATARANGE_MUSIC { 2137 pub DataRange: KSDATAFORMAT, 2138 pub Technology: ::windows_sys::core::GUID, 2139 pub Channels: u32, 2140 pub Notes: u32, 2141 pub ChannelMask: u32, 2142 } 2143 impl ::core::marker::Copy for KSDATARANGE_MUSIC {} 2144 impl ::core::clone::Clone for KSDATARANGE_MUSIC { clone(&self) -> Self2145 fn clone(&self) -> Self { 2146 *self 2147 } 2148 } 2149 pub const KSDEGRADESETID_Standard: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2673230208, data2: 28748, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2150 pub type KSDEGRADE_STANDARD = i32; 2151 pub const KSDEGRADE_STANDARD_SAMPLE: KSDEGRADE_STANDARD = 0i32; 2152 pub const KSDEGRADE_STANDARD_QUALITY: KSDEGRADE_STANDARD = 1i32; 2153 pub const KSDEGRADE_STANDARD_COMPUTATION: KSDEGRADE_STANDARD = 2i32; 2154 pub const KSDEGRADE_STANDARD_SKIP: KSDEGRADE_STANDARD = 3i32; 2155 pub const KSDEVICE_DESCRIPTOR_VERSION: u32 = 256u32; 2156 pub const KSDEVICE_DESCRIPTOR_VERSION_2: u32 = 272u32; 2157 pub const KSDEVICE_FLAG_ENABLE_QUERYINTERFACE: u32 = 4u32; 2158 pub const KSDEVICE_FLAG_ENABLE_REMOTE_WAKEUP: u32 = 1u32; 2159 pub const KSDEVICE_FLAG_LOWPOWER_PASSTHROUGH: u32 = 2u32; 2160 #[repr(C)] 2161 pub struct KSDEVICE_PROFILE_INFO { 2162 pub Type: u32, 2163 pub Size: u32, 2164 pub Anonymous: KSDEVICE_PROFILE_INFO_0, 2165 } 2166 impl ::core::marker::Copy for KSDEVICE_PROFILE_INFO {} 2167 impl ::core::clone::Clone for KSDEVICE_PROFILE_INFO { clone(&self) -> Self2168 fn clone(&self) -> Self { 2169 *self 2170 } 2171 } 2172 #[repr(C)] 2173 pub union KSDEVICE_PROFILE_INFO_0 { 2174 pub Camera: KSDEVICE_PROFILE_INFO_0_0, 2175 } 2176 impl ::core::marker::Copy for KSDEVICE_PROFILE_INFO_0 {} 2177 impl ::core::clone::Clone for KSDEVICE_PROFILE_INFO_0 { clone(&self) -> Self2178 fn clone(&self) -> Self { 2179 *self 2180 } 2181 } 2182 #[repr(C)] 2183 pub struct KSDEVICE_PROFILE_INFO_0_0 { 2184 pub Info: KSCAMERA_PROFILE_INFO, 2185 pub Reserved: u32, 2186 pub ConcurrencyCount: u32, 2187 pub Concurrency: *mut KSCAMERA_PROFILE_CONCURRENCYINFO, 2188 } 2189 impl ::core::marker::Copy for KSDEVICE_PROFILE_INFO_0_0 {} 2190 impl ::core::clone::Clone for KSDEVICE_PROFILE_INFO_0_0 { clone(&self) -> Self2191 fn clone(&self) -> Self { 2192 *self 2193 } 2194 } 2195 pub const KSDEVICE_PROFILE_TYPE_CAMERA: u32 = 1u32; 2196 pub const KSDEVICE_PROFILE_TYPE_UNKNOWN: u32 = 0u32; 2197 pub type KSDEVICE_THERMAL_STATE = i32; 2198 pub const KSDEVICE_THERMAL_STATE_LOW: KSDEVICE_THERMAL_STATE = 0i32; 2199 pub const KSDEVICE_THERMAL_STATE_HIGH: KSDEVICE_THERMAL_STATE = 1i32; 2200 pub const KSDISPATCH_FASTIO: u32 = 2147483648u32; 2201 #[repr(C)] 2202 pub struct KSDISPLAYCHANGE { 2203 pub PelsWidth: u32, 2204 pub PelsHeight: u32, 2205 pub BitsPerPel: u32, 2206 pub DeviceID: [u16; 1], 2207 } 2208 impl ::core::marker::Copy for KSDISPLAYCHANGE {} 2209 impl ::core::clone::Clone for KSDISPLAYCHANGE { clone(&self) -> Self2210 fn clone(&self) -> Self { 2211 *self 2212 } 2213 } 2214 #[repr(C)] 2215 pub struct KSDS3D_BUFFER_ALL { 2216 pub Position: DS3DVECTOR, 2217 pub Velocity: DS3DVECTOR, 2218 pub InsideConeAngle: u32, 2219 pub OutsideConeAngle: u32, 2220 pub ConeOrientation: DS3DVECTOR, 2221 pub ConeOutsideVolume: i32, 2222 pub MinDistance: f32, 2223 pub MaxDistance: f32, 2224 pub Mode: u32, 2225 } 2226 impl ::core::marker::Copy for KSDS3D_BUFFER_ALL {} 2227 impl ::core::clone::Clone for KSDS3D_BUFFER_ALL { clone(&self) -> Self2228 fn clone(&self) -> Self { 2229 *self 2230 } 2231 } 2232 #[repr(C)] 2233 pub struct KSDS3D_BUFFER_CONE_ANGLES { 2234 pub InsideConeAngle: u32, 2235 pub OutsideConeAngle: u32, 2236 } 2237 impl ::core::marker::Copy for KSDS3D_BUFFER_CONE_ANGLES {} 2238 impl ::core::clone::Clone for KSDS3D_BUFFER_CONE_ANGLES { clone(&self) -> Self2239 fn clone(&self) -> Self { 2240 *self 2241 } 2242 } 2243 pub type KSDS3D_HRTF_COEFF_FORMAT = i32; 2244 pub const FLOAT_COEFF: KSDS3D_HRTF_COEFF_FORMAT = 0i32; 2245 pub const SHORT_COEFF: KSDS3D_HRTF_COEFF_FORMAT = 1i32; 2246 pub const KSDS3D_COEFF_COUNT: KSDS3D_HRTF_COEFF_FORMAT = 2i32; 2247 #[repr(C)] 2248 pub struct KSDS3D_HRTF_FILTER_FORMAT_MSG { 2249 pub FilterMethod: KSDS3D_HRTF_FILTER_METHOD, 2250 pub CoeffFormat: KSDS3D_HRTF_COEFF_FORMAT, 2251 pub Version: KSDS3D_HRTF_FILTER_VERSION, 2252 pub Reserved: u32, 2253 } 2254 impl ::core::marker::Copy for KSDS3D_HRTF_FILTER_FORMAT_MSG {} 2255 impl ::core::clone::Clone for KSDS3D_HRTF_FILTER_FORMAT_MSG { clone(&self) -> Self2256 fn clone(&self) -> Self { 2257 *self 2258 } 2259 } 2260 pub type KSDS3D_HRTF_FILTER_METHOD = i32; 2261 pub const DIRECT_FORM: KSDS3D_HRTF_FILTER_METHOD = 0i32; 2262 pub const CASCADE_FORM: KSDS3D_HRTF_FILTER_METHOD = 1i32; 2263 pub const KSDS3D_FILTER_METHOD_COUNT: KSDS3D_HRTF_FILTER_METHOD = 2i32; 2264 pub type KSDS3D_HRTF_FILTER_QUALITY = i32; 2265 pub const FULL_FILTER: KSDS3D_HRTF_FILTER_QUALITY = 0i32; 2266 pub const LIGHT_FILTER: KSDS3D_HRTF_FILTER_QUALITY = 1i32; 2267 pub const KSDS3D_FILTER_QUALITY_COUNT: KSDS3D_HRTF_FILTER_QUALITY = 2i32; 2268 pub type KSDS3D_HRTF_FILTER_VERSION = i32; 2269 pub const DS3D_HRTF_VERSION_1: KSDS3D_HRTF_FILTER_VERSION = 0i32; 2270 #[repr(C)] 2271 pub struct KSDS3D_HRTF_INIT_MSG { 2272 pub Size: u32, 2273 pub Quality: KSDS3D_HRTF_FILTER_QUALITY, 2274 pub SampleRate: f32, 2275 pub MaxFilterSize: u32, 2276 pub FilterTransientMuteLength: u32, 2277 pub FilterOverlapBufferLength: u32, 2278 pub OutputOverlapBufferLength: u32, 2279 pub Reserved: u32, 2280 } 2281 impl ::core::marker::Copy for KSDS3D_HRTF_INIT_MSG {} 2282 impl ::core::clone::Clone for KSDS3D_HRTF_INIT_MSG { clone(&self) -> Self2283 fn clone(&self) -> Self { 2284 *self 2285 } 2286 } 2287 #[repr(C)] 2288 #[cfg(feature = "Win32_Foundation")] 2289 pub struct KSDS3D_HRTF_PARAMS_MSG { 2290 pub Size: u32, 2291 pub Enabled: u32, 2292 pub SwapChannels: super::super::Foundation::BOOL, 2293 pub ZeroAzimuth: super::super::Foundation::BOOL, 2294 pub CrossFadeOutput: super::super::Foundation::BOOL, 2295 pub FilterSize: u32, 2296 } 2297 #[cfg(feature = "Win32_Foundation")] 2298 impl ::core::marker::Copy for KSDS3D_HRTF_PARAMS_MSG {} 2299 #[cfg(feature = "Win32_Foundation")] 2300 impl ::core::clone::Clone for KSDS3D_HRTF_PARAMS_MSG { clone(&self) -> Self2301 fn clone(&self) -> Self { 2302 *self 2303 } 2304 } 2305 #[repr(C)] 2306 pub struct KSDS3D_ITD_PARAMS { 2307 pub Channel: i32, 2308 pub VolSmoothScale: f32, 2309 pub TotalDryAttenuation: f32, 2310 pub TotalWetAttenuation: f32, 2311 pub SmoothFrequency: i32, 2312 pub Delay: i32, 2313 } 2314 impl ::core::marker::Copy for KSDS3D_ITD_PARAMS {} 2315 impl ::core::clone::Clone for KSDS3D_ITD_PARAMS { clone(&self) -> Self2316 fn clone(&self) -> Self { 2317 *self 2318 } 2319 } 2320 #[repr(C)] 2321 pub struct KSDS3D_ITD_PARAMS_MSG { 2322 pub Enabled: u32, 2323 pub LeftParams: KSDS3D_ITD_PARAMS, 2324 pub RightParams: KSDS3D_ITD_PARAMS, 2325 pub Reserved: u32, 2326 } 2327 impl ::core::marker::Copy for KSDS3D_ITD_PARAMS_MSG {} 2328 impl ::core::clone::Clone for KSDS3D_ITD_PARAMS_MSG { clone(&self) -> Self2329 fn clone(&self) -> Self { 2330 *self 2331 } 2332 } 2333 #[repr(C)] 2334 pub struct KSDS3D_LISTENER_ALL { 2335 pub Position: DS3DVECTOR, 2336 pub Velocity: DS3DVECTOR, 2337 pub OrientFront: DS3DVECTOR, 2338 pub OrientTop: DS3DVECTOR, 2339 pub DistanceFactor: f32, 2340 pub RolloffFactor: f32, 2341 pub DopplerFactor: f32, 2342 } 2343 impl ::core::marker::Copy for KSDS3D_LISTENER_ALL {} 2344 impl ::core::clone::Clone for KSDS3D_LISTENER_ALL { clone(&self) -> Self2345 fn clone(&self) -> Self { 2346 *self 2347 } 2348 } 2349 #[repr(C)] 2350 pub struct KSDS3D_LISTENER_ORIENTATION { 2351 pub Front: DS3DVECTOR, 2352 pub Top: DS3DVECTOR, 2353 } 2354 impl ::core::marker::Copy for KSDS3D_LISTENER_ORIENTATION {} 2355 impl ::core::clone::Clone for KSDS3D_LISTENER_ORIENTATION { clone(&self) -> Self2356 fn clone(&self) -> Self { 2357 *self 2358 } 2359 } 2360 pub const KSDSOUND_3D_MODE_DISABLE: u32 = 2u32; 2361 pub const KSDSOUND_3D_MODE_HEADRELATIVE: u32 = 1u32; 2362 pub const KSDSOUND_3D_MODE_NORMAL: u32 = 0u32; 2363 pub const KSDSOUND_BUFFER_CTRL_3D: u32 = 1u32; 2364 pub const KSDSOUND_BUFFER_CTRL_FREQUENCY: u32 = 2u32; 2365 pub const KSDSOUND_BUFFER_CTRL_HRTF_3D: u32 = 1073741824u32; 2366 pub const KSDSOUND_BUFFER_CTRL_PAN: u32 = 4u32; 2367 pub const KSDSOUND_BUFFER_CTRL_POSITIONNOTIFY: u32 = 16u32; 2368 pub const KSDSOUND_BUFFER_CTRL_VOLUME: u32 = 8u32; 2369 pub const KSDSOUND_BUFFER_LOCHARDWARE: u32 = 4u32; 2370 pub const KSDSOUND_BUFFER_LOCSOFTWARE: u32 = 8u32; 2371 pub const KSDSOUND_BUFFER_PRIMARY: u32 = 1u32; 2372 pub const KSDSOUND_BUFFER_STATIC: u32 = 2u32; 2373 #[repr(C)] 2374 pub struct KSERROR { 2375 pub Context: *mut ::core::ffi::c_void, 2376 pub Status: u32, 2377 } 2378 impl ::core::marker::Copy for KSERROR {} 2379 impl ::core::clone::Clone for KSERROR { clone(&self) -> Self2380 fn clone(&self) -> Self { 2381 *self 2382 } 2383 } 2384 #[repr(C)] 2385 #[cfg(feature = "Win32_Foundation")] 2386 pub struct KSEVENTDATA { 2387 pub NotificationType: u32, 2388 pub Anonymous: KSEVENTDATA_0, 2389 } 2390 #[cfg(feature = "Win32_Foundation")] 2391 impl ::core::marker::Copy for KSEVENTDATA {} 2392 #[cfg(feature = "Win32_Foundation")] 2393 impl ::core::clone::Clone for KSEVENTDATA { clone(&self) -> Self2394 fn clone(&self) -> Self { 2395 *self 2396 } 2397 } 2398 #[repr(C)] 2399 #[cfg(feature = "Win32_Foundation")] 2400 pub union KSEVENTDATA_0 { 2401 pub EventHandle: KSEVENTDATA_0_1, 2402 pub SemaphoreHandle: KSEVENTDATA_0_2, 2403 pub Alignment: KSEVENTDATA_0_0, 2404 } 2405 #[cfg(feature = "Win32_Foundation")] 2406 impl ::core::marker::Copy for KSEVENTDATA_0 {} 2407 #[cfg(feature = "Win32_Foundation")] 2408 impl ::core::clone::Clone for KSEVENTDATA_0 { clone(&self) -> Self2409 fn clone(&self) -> Self { 2410 *self 2411 } 2412 } 2413 #[repr(C)] 2414 #[cfg(feature = "Win32_Foundation")] 2415 pub struct KSEVENTDATA_0_0 { 2416 pub Unused: *mut ::core::ffi::c_void, 2417 pub Alignment: [isize; 2], 2418 } 2419 #[cfg(feature = "Win32_Foundation")] 2420 impl ::core::marker::Copy for KSEVENTDATA_0_0 {} 2421 #[cfg(feature = "Win32_Foundation")] 2422 impl ::core::clone::Clone for KSEVENTDATA_0_0 { clone(&self) -> Self2423 fn clone(&self) -> Self { 2424 *self 2425 } 2426 } 2427 #[repr(C)] 2428 #[cfg(feature = "Win32_Foundation")] 2429 pub struct KSEVENTDATA_0_1 { 2430 pub Event: super::super::Foundation::HANDLE, 2431 pub Reserved: [usize; 2], 2432 } 2433 #[cfg(feature = "Win32_Foundation")] 2434 impl ::core::marker::Copy for KSEVENTDATA_0_1 {} 2435 #[cfg(feature = "Win32_Foundation")] 2436 impl ::core::clone::Clone for KSEVENTDATA_0_1 { clone(&self) -> Self2437 fn clone(&self) -> Self { 2438 *self 2439 } 2440 } 2441 #[repr(C)] 2442 #[cfg(feature = "Win32_Foundation")] 2443 pub struct KSEVENTDATA_0_2 { 2444 pub Semaphore: super::super::Foundation::HANDLE, 2445 pub Reserved: u32, 2446 pub Adjustment: i32, 2447 } 2448 #[cfg(feature = "Win32_Foundation")] 2449 impl ::core::marker::Copy for KSEVENTDATA_0_2 {} 2450 #[cfg(feature = "Win32_Foundation")] 2451 impl ::core::clone::Clone for KSEVENTDATA_0_2 { clone(&self) -> Self2452 fn clone(&self) -> Self { 2453 *self 2454 } 2455 } 2456 pub const KSEVENTF_DPC: u32 = 16u32; 2457 pub const KSEVENTF_EVENT_HANDLE: u32 = 1u32; 2458 pub const KSEVENTF_EVENT_OBJECT: u32 = 4u32; 2459 pub const KSEVENTF_KSWORKITEM: u32 = 128u32; 2460 pub const KSEVENTF_SEMAPHORE_HANDLE: u32 = 2u32; 2461 pub const KSEVENTF_SEMAPHORE_OBJECT: u32 = 8u32; 2462 pub const KSEVENTF_WORKITEM: u32 = 32u32; 2463 pub const KSEVENTSETID_AudioControlChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3898513048, data2: 64047, data3: 4561, data4: [149, 189, 0, 192, 79, 185, 37, 211] }; 2464 pub const KSEVENTSETID_CameraAsyncControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 580982612, data2: 38657, data3: 16520, data4: [179, 63, 107, 156, 188, 82, 223, 94] }; 2465 pub const KSEVENTSETID_CameraEvent: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2023338720, data2: 27459, data3: 18788, data4: [157, 42, 162, 31, 64, 97, 245, 118] }; 2466 pub const KSEVENTSETID_Clock: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911052320, data2: 25287, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2467 pub const KSEVENTSETID_Connection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2135673824, data2: 40613, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2468 pub const KSEVENTSETID_Device: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 679646956, data2: 40852, data3: 16820, data4: [161, 83, 170, 49, 174, 236, 179, 63] }; 2469 pub const KSEVENTSETID_DynamicFormatChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2470 data1: 371901526, 2471 data2: 33751, 2472 data3: 16953, 2473 data4: [150, 223, 199, 95, 250, 19, 139, 198], 2474 }; 2475 pub const KSEVENTSETID_EXTDEV_Command: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 278690184, data2: 46027, data3: 4562, data4: [180, 142, 0, 96, 151, 179, 57, 27] }; 2476 pub const KSEVENTSETID_ExtendedCameraControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1461490377, data2: 5026, data3: 18403, data4: [166, 73, 210, 167, 120, 22, 99, 132] }; 2477 pub const KSEVENTSETID_LoopedStreaming: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1182972224, data2: 50927, data3: 4560, data4: [150, 216, 0, 170, 0, 81, 229, 29] }; 2478 pub const KSEVENTSETID_PinCapsChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3712948526, data2: 15224, data3: 18861, data4: [165, 52, 44, 49, 91, 130, 32, 0] }; 2479 pub const KSEVENTSETID_SoundDetector: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2480 data1: 1769495707, 2481 data2: 64557, 2482 data3: 18902, 2483 data4: [172, 50, 71, 153, 248, 125, 233, 246], 2484 }; 2485 pub const KSEVENTSETID_StreamAllocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1977177457, data2: 1852, data3: 4560, data4: [161, 97, 0, 32, 175, 209, 86, 228] }; 2486 pub const KSEVENTSETID_Telephony: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2487 data1: 3078558388, 2488 data2: 52916, 2489 data3: 17540, 2490 data4: [141, 94, 82, 193, 231, 216, 118, 45], 2491 }; 2492 pub const KSEVENTSETID_VIDCAPTOSTI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3678920224, data2: 63016, data3: 4561, data4: [186, 65, 0, 160, 201, 13, 43, 5] }; 2493 pub const KSEVENTSETID_VIDCAP_TVAUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401169, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 2494 pub const KSEVENTSETID_VPNotify: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 549804430, data2: 54216, data3: 4560, data4: [141, 252, 0, 192, 79, 215, 192, 139] }; 2495 pub const KSEVENTSETID_VPVBINotify: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3964836609, data2: 6687, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; 2496 pub const KSEVENTSETID_VolumeLimit: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3658908773, data2: 14972, data3: 18520, data4: [157, 74, 62, 142, 36, 112, 26, 239] }; 2497 pub type KSEVENT_AUDIO_CONTROL_CHANGE = i32; 2498 pub const KSEVENT_CONTROL_CHANGE: KSEVENT_AUDIO_CONTROL_CHANGE = 0i32; 2499 pub type KSEVENT_CAMERACONTROL = i32; 2500 pub const KSEVENT_CAMERACONTROL_FOCUS: KSEVENT_CAMERACONTROL = 0i32; 2501 pub const KSEVENT_CAMERACONTROL_ZOOM: KSEVENT_CAMERACONTROL = 1i32; 2502 pub type KSEVENT_CAMERAEVENT = i32; 2503 pub const KSEVENT_PHOTO_SAMPLE_SCANNED: KSEVENT_CAMERAEVENT = 0i32; 2504 pub type KSEVENT_CLOCK_POSITION = i32; 2505 pub const KSEVENT_CLOCK_INTERVAL_MARK: KSEVENT_CLOCK_POSITION = 0i32; 2506 pub const KSEVENT_CLOCK_POSITION_MARK: KSEVENT_CLOCK_POSITION = 1i32; 2507 pub type KSEVENT_CONNECTION = i32; 2508 pub const KSEVENT_CONNECTION_POSITIONUPDATE: KSEVENT_CONNECTION = 0i32; 2509 pub const KSEVENT_CONNECTION_DATADISCONTINUITY: KSEVENT_CONNECTION = 1i32; 2510 pub const KSEVENT_CONNECTION_TIMEDISCONTINUITY: KSEVENT_CONNECTION = 2i32; 2511 pub const KSEVENT_CONNECTION_PRIORITY: KSEVENT_CONNECTION = 3i32; 2512 pub const KSEVENT_CONNECTION_ENDOFSTREAM: KSEVENT_CONNECTION = 4i32; 2513 pub type KSEVENT_CROSSBAR = i32; 2514 pub const KSEVENT_CROSSBAR_CHANGED: KSEVENT_CROSSBAR = 0i32; 2515 pub type KSEVENT_DEVCMD = i32; 2516 pub const KSEVENT_EXTDEV_COMMAND_NOTIFY_INTERIM_READY: KSEVENT_DEVCMD = 0i32; 2517 pub const KSEVENT_EXTDEV_COMMAND_CONTROL_INTERIM_READY: KSEVENT_DEVCMD = 1i32; 2518 pub const KSEVENT_EXTDEV_COMMAND_BUSRESET: KSEVENT_DEVCMD = 2i32; 2519 pub const KSEVENT_EXTDEV_TIMECODE_UPDATE: KSEVENT_DEVCMD = 3i32; 2520 pub const KSEVENT_EXTDEV_OPERATION_MODE_UPDATE: KSEVENT_DEVCMD = 4i32; 2521 pub const KSEVENT_EXTDEV_TRANSPORT_STATE_UPDATE: KSEVENT_DEVCMD = 5i32; 2522 pub const KSEVENT_EXTDEV_NOTIFY_REMOVAL: KSEVENT_DEVCMD = 6i32; 2523 pub const KSEVENT_EXTDEV_NOTIFY_MEDIUM_CHANGE: KSEVENT_DEVCMD = 7i32; 2524 pub type KSEVENT_DEVICE = i32; 2525 pub const KSEVENT_DEVICE_LOST: KSEVENT_DEVICE = 0i32; 2526 pub const KSEVENT_DEVICE_PREEMPTED: KSEVENT_DEVICE = 1i32; 2527 pub const KSEVENT_DEVICE_THERMAL_HIGH: KSEVENT_DEVICE = 2i32; 2528 pub const KSEVENT_DEVICE_THERMAL_LOW: KSEVENT_DEVICE = 3i32; 2529 pub type KSEVENT_DYNAMICFORMATCHANGE = i32; 2530 pub const KSEVENT_DYNAMIC_FORMAT_CHANGE: KSEVENT_DYNAMICFORMATCHANGE = 0i32; 2531 pub const KSEVENT_ENTRY_BUFFERED: u32 = 4u32; 2532 pub const KSEVENT_ENTRY_DELETED: u32 = 1u32; 2533 pub const KSEVENT_ENTRY_ONESHOT: u32 = 2u32; 2534 pub type KSEVENT_LOOPEDSTREAMING = i32; 2535 pub const KSEVENT_LOOPEDSTREAMING_POSITION: KSEVENT_LOOPEDSTREAMING = 0i32; 2536 pub type KSEVENT_PINCAPS_CHANGENOTIFICATIONS = i32; 2537 pub const KSEVENT_PINCAPS_FORMATCHANGE: KSEVENT_PINCAPS_CHANGENOTIFICATIONS = 0i32; 2538 pub const KSEVENT_PINCAPS_JACKINFOCHANGE: KSEVENT_PINCAPS_CHANGENOTIFICATIONS = 1i32; 2539 pub type KSEVENT_SOUNDDETECTOR = i32; 2540 pub const KSEVENT_SOUNDDETECTOR_MATCHDETECTED: KSEVENT_SOUNDDETECTOR = 1i32; 2541 pub type KSEVENT_STREAMALLOCATOR = i32; 2542 pub const KSEVENT_STREAMALLOCATOR_INTERNAL_FREEFRAME: KSEVENT_STREAMALLOCATOR = 0i32; 2543 pub const KSEVENT_STREAMALLOCATOR_FREEFRAME: KSEVENT_STREAMALLOCATOR = 1i32; 2544 pub type KSEVENT_TELEPHONY = i32; 2545 pub const KSEVENT_TELEPHONY_ENDPOINTPAIRS_CHANGED: KSEVENT_TELEPHONY = 0i32; 2546 #[repr(C)] 2547 #[cfg(feature = "Win32_Foundation")] 2548 pub struct KSEVENT_TIME_INTERVAL { 2549 pub EventData: KSEVENTDATA, 2550 pub TimeBase: i64, 2551 pub Interval: i64, 2552 } 2553 #[cfg(feature = "Win32_Foundation")] 2554 impl ::core::marker::Copy for KSEVENT_TIME_INTERVAL {} 2555 #[cfg(feature = "Win32_Foundation")] 2556 impl ::core::clone::Clone for KSEVENT_TIME_INTERVAL { clone(&self) -> Self2557 fn clone(&self) -> Self { 2558 *self 2559 } 2560 } 2561 #[repr(C)] 2562 #[cfg(feature = "Win32_Foundation")] 2563 pub struct KSEVENT_TIME_MARK { 2564 pub EventData: KSEVENTDATA, 2565 pub MarkTime: i64, 2566 } 2567 #[cfg(feature = "Win32_Foundation")] 2568 impl ::core::marker::Copy for KSEVENT_TIME_MARK {} 2569 #[cfg(feature = "Win32_Foundation")] 2570 impl ::core::clone::Clone for KSEVENT_TIME_MARK { clone(&self) -> Self2571 fn clone(&self) -> Self { 2572 *self 2573 } 2574 } 2575 pub type KSEVENT_TUNER = i32; 2576 pub const KSEVENT_TUNER_CHANGED: KSEVENT_TUNER = 0i32; 2577 pub const KSEVENT_TUNER_INITIATE_SCAN: KSEVENT_TUNER = 1i32; 2578 #[repr(C)] 2579 #[cfg(feature = "Win32_Foundation")] 2580 pub struct KSEVENT_TUNER_INITIATE_SCAN_S { 2581 pub EventData: KSEVENTDATA, 2582 pub StartFrequency: u32, 2583 pub EndFrequency: u32, 2584 } 2585 #[cfg(feature = "Win32_Foundation")] 2586 impl ::core::marker::Copy for KSEVENT_TUNER_INITIATE_SCAN_S {} 2587 #[cfg(feature = "Win32_Foundation")] 2588 impl ::core::clone::Clone for KSEVENT_TUNER_INITIATE_SCAN_S { clone(&self) -> Self2589 fn clone(&self) -> Self { 2590 *self 2591 } 2592 } 2593 pub type KSEVENT_TVAUDIO = i32; 2594 pub const KSEVENT_TVAUDIO_CHANGED: KSEVENT_TVAUDIO = 0i32; 2595 pub const KSEVENT_TYPE_BASICSUPPORT: u32 = 512u32; 2596 pub const KSEVENT_TYPE_ENABLE: u32 = 1u32; 2597 pub const KSEVENT_TYPE_ENABLEBUFFERED: u32 = 4u32; 2598 pub const KSEVENT_TYPE_ONESHOT: u32 = 2u32; 2599 pub const KSEVENT_TYPE_QUERYBUFFER: u32 = 1024u32; 2600 pub const KSEVENT_TYPE_SETSUPPORT: u32 = 256u32; 2601 pub const KSEVENT_TYPE_TOPOLOGY: u32 = 268435456u32; 2602 pub type KSEVENT_VIDCAPTOSTI = i32; 2603 pub const KSEVENT_VIDCAPTOSTI_EXT_TRIGGER: KSEVENT_VIDCAPTOSTI = 0i32; 2604 pub const KSEVENT_VIDCAP_AUTO_UPDATE: KSEVENT_VIDCAPTOSTI = 1i32; 2605 pub const KSEVENT_VIDCAP_SEARCH: KSEVENT_VIDCAPTOSTI = 2i32; 2606 pub type KSEVENT_VIDEODECODER = i32; 2607 pub const KSEVENT_VIDEODECODER_CHANGED: KSEVENT_VIDEODECODER = 0i32; 2608 pub type KSEVENT_VOLUMELIMIT = i32; 2609 pub const KSEVENT_VOLUMELIMIT_CHANGED: KSEVENT_VOLUMELIMIT = 0i32; 2610 pub type KSEVENT_VPNOTIFY = i32; 2611 pub const KSEVENT_VPNOTIFY_FORMATCHANGE: KSEVENT_VPNOTIFY = 0i32; 2612 pub type KSEVENT_VPVBINOTIFY = i32; 2613 pub const KSEVENT_VPVBINOTIFY_FORMATCHANGE: KSEVENT_VPVBINOTIFY = 0i32; 2614 #[repr(C)] 2615 pub struct KSE_NODE { 2616 pub Event: KSIDENTIFIER, 2617 pub NodeId: u32, 2618 pub Reserved: u32, 2619 } 2620 impl ::core::marker::Copy for KSE_NODE {} 2621 impl ::core::clone::Clone for KSE_NODE { clone(&self) -> Self2622 fn clone(&self) -> Self { 2623 *self 2624 } 2625 } 2626 #[repr(C)] 2627 pub struct KSE_PIN { 2628 pub Event: KSIDENTIFIER, 2629 pub PinId: u32, 2630 pub Reserved: u32, 2631 } 2632 impl ::core::marker::Copy for KSE_PIN {} 2633 impl ::core::clone::Clone for KSE_PIN { clone(&self) -> Self2634 fn clone(&self) -> Self { 2635 *self 2636 } 2637 } 2638 pub const KSFILTER_FLAG_CRITICAL_PROCESSING: u32 = 2u32; 2639 pub const KSFILTER_FLAG_DENY_USERMODE_ACCESS: u32 = 2147483648u32; 2640 pub const KSFILTER_FLAG_DISPATCH_LEVEL_PROCESSING: u32 = 1u32; 2641 pub const KSFILTER_FLAG_HYPERCRITICAL_PROCESSING: u32 = 4u32; 2642 pub const KSFILTER_FLAG_PRIORITIZE_REFERENCEGUID: u32 = 16u32; 2643 pub const KSFILTER_FLAG_RECEIVE_ZERO_LENGTH_SAMPLES: u32 = 8u32; 2644 #[repr(C)] 2645 pub struct KSFRAMETIME { 2646 pub Duration: i64, 2647 pub FrameFlags: u32, 2648 pub Reserved: u32, 2649 } 2650 impl ::core::marker::Copy for KSFRAMETIME {} 2651 impl ::core::clone::Clone for KSFRAMETIME { clone(&self) -> Self2652 fn clone(&self) -> Self { 2653 *self 2654 } 2655 } 2656 pub const KSFRAMETIME_VARIABLESIZE: u32 = 1u32; 2657 #[repr(C)] 2658 #[cfg(feature = "Win32_Foundation")] 2659 pub struct KSGOP_USERDATA { 2660 pub sc: u32, 2661 pub reserved1: u32, 2662 pub cFields: u8, 2663 pub l21Data: [super::super::Foundation::CHAR; 3], 2664 } 2665 #[cfg(feature = "Win32_Foundation")] 2666 impl ::core::marker::Copy for KSGOP_USERDATA {} 2667 #[cfg(feature = "Win32_Foundation")] 2668 impl ::core::clone::Clone for KSGOP_USERDATA { clone(&self) -> Self2669 fn clone(&self) -> Self { 2670 *self 2671 } 2672 } 2673 #[repr(C)] 2674 pub struct KSIDENTIFIER { 2675 pub Anonymous: KSIDENTIFIER_0, 2676 } 2677 impl ::core::marker::Copy for KSIDENTIFIER {} 2678 impl ::core::clone::Clone for KSIDENTIFIER { clone(&self) -> Self2679 fn clone(&self) -> Self { 2680 *self 2681 } 2682 } 2683 #[repr(C)] 2684 pub union KSIDENTIFIER_0 { 2685 pub Anonymous: KSIDENTIFIER_0_0, 2686 pub Alignment: i64, 2687 } 2688 impl ::core::marker::Copy for KSIDENTIFIER_0 {} 2689 impl ::core::clone::Clone for KSIDENTIFIER_0 { clone(&self) -> Self2690 fn clone(&self) -> Self { 2691 *self 2692 } 2693 } 2694 #[repr(C)] 2695 pub struct KSIDENTIFIER_0_0 { 2696 pub Set: ::windows_sys::core::GUID, 2697 pub Id: u32, 2698 pub Flags: u32, 2699 } 2700 impl ::core::marker::Copy for KSIDENTIFIER_0_0 {} 2701 impl ::core::clone::Clone for KSIDENTIFIER_0_0 { clone(&self) -> Self2702 fn clone(&self) -> Self { 2703 *self 2704 } 2705 } 2706 pub const KSINTERFACESETID_FileIo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2356122412, data2: 59249, data3: 4560, data4: [184, 255, 0, 160, 201, 34, 49, 150] }; 2707 pub const KSINTERFACESETID_Media: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 974383936, data2: 12455, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2708 pub const KSINTERFACESETID_Standard: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 445081248, data2: 25294, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2709 pub type KSINTERFACE_FILEIO = i32; 2710 pub const KSINTERFACE_FILEIO_STREAMING: KSINTERFACE_FILEIO = 0i32; 2711 pub type KSINTERFACE_MEDIA = i32; 2712 pub const KSINTERFACE_MEDIA_MUSIC: KSINTERFACE_MEDIA = 0i32; 2713 pub const KSINTERFACE_MEDIA_WAVE_BUFFERED: KSINTERFACE_MEDIA = 1i32; 2714 pub const KSINTERFACE_MEDIA_WAVE_QUEUED: KSINTERFACE_MEDIA = 2i32; 2715 pub type KSINTERFACE_STANDARD = i32; 2716 pub const KSINTERFACE_STANDARD_STREAMING: KSINTERFACE_STANDARD = 0i32; 2717 pub const KSINTERFACE_STANDARD_LOOPED_STREAMING: KSINTERFACE_STANDARD = 1i32; 2718 pub const KSINTERFACE_STANDARD_CONTROL: KSINTERFACE_STANDARD = 2i32; 2719 #[repr(C)] 2720 pub struct KSINTERVAL { 2721 pub TimeBase: i64, 2722 pub Interval: i64, 2723 } 2724 impl ::core::marker::Copy for KSINTERVAL {} 2725 impl ::core::clone::Clone for KSINTERVAL { clone(&self) -> Self2726 fn clone(&self) -> Self { 2727 *self 2728 } 2729 } 2730 #[repr(C)] 2731 #[cfg(feature = "Win32_Foundation")] 2732 pub struct KSJACK_DESCRIPTION { 2733 pub ChannelMapping: u32, 2734 pub Color: u32, 2735 pub ConnectionType: EPcxConnectionType, 2736 pub GeoLocation: EPcxGeoLocation, 2737 pub GenLocation: EPcxGenLocation, 2738 pub PortConnection: EPxcPortConnection, 2739 pub IsConnected: super::super::Foundation::BOOL, 2740 } 2741 #[cfg(feature = "Win32_Foundation")] 2742 impl ::core::marker::Copy for KSJACK_DESCRIPTION {} 2743 #[cfg(feature = "Win32_Foundation")] 2744 impl ::core::clone::Clone for KSJACK_DESCRIPTION { clone(&self) -> Self2745 fn clone(&self) -> Self { 2746 *self 2747 } 2748 } 2749 #[repr(C)] 2750 pub struct KSJACK_DESCRIPTION2 { 2751 pub DeviceStateInfo: u32, 2752 pub JackCapabilities: u32, 2753 } 2754 impl ::core::marker::Copy for KSJACK_DESCRIPTION2 {} 2755 impl ::core::clone::Clone for KSJACK_DESCRIPTION2 { clone(&self) -> Self2756 fn clone(&self) -> Self { 2757 *self 2758 } 2759 } 2760 pub type KSJACK_SINK_CONNECTIONTYPE = i32; 2761 pub const KSJACK_SINK_CONNECTIONTYPE_HDMI: KSJACK_SINK_CONNECTIONTYPE = 0i32; 2762 pub const KSJACK_SINK_CONNECTIONTYPE_DISPLAYPORT: KSJACK_SINK_CONNECTIONTYPE = 1i32; 2763 #[repr(C)] 2764 #[cfg(feature = "Win32_Foundation")] 2765 pub struct KSJACK_SINK_INFORMATION { 2766 pub ConnType: KSJACK_SINK_CONNECTIONTYPE, 2767 pub ManufacturerId: u16, 2768 pub ProductId: u16, 2769 pub AudioLatency: u16, 2770 pub HDCPCapable: super::super::Foundation::BOOL, 2771 pub AICapable: super::super::Foundation::BOOL, 2772 pub SinkDescriptionLength: u8, 2773 pub SinkDescription: [u16; 32], 2774 pub PortId: super::super::Foundation::LUID, 2775 } 2776 #[cfg(feature = "Win32_Foundation")] 2777 impl ::core::marker::Copy for KSJACK_SINK_INFORMATION {} 2778 #[cfg(feature = "Win32_Foundation")] 2779 impl ::core::clone::Clone for KSJACK_SINK_INFORMATION { clone(&self) -> Self2780 fn clone(&self) -> Self { 2781 *self 2782 } 2783 } 2784 pub const KSMEDIUMSETID_MidiBus: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 93356096, data2: 12870, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2785 pub const KSMEDIUMSETID_Standard: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1195881248, data2: 25294, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2786 pub const KSMEDIUMSETID_VPBus: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2710312428, data2: 52803, data3: 4560, data4: [171, 231, 0, 160, 201, 34, 49, 150] }; 2787 pub const KSMEDIUM_STANDARD_DEVIO: u32 = 0u32; 2788 pub const KSMEDIUM_TYPE_ANYINSTANCE: u32 = 0u32; 2789 pub const KSMEMORY_TYPE_DEVICE_UNKNOWN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 152811065, data2: 24639, data3: 4561, data4: [176, 103, 0, 160, 201, 6, 40, 2] }; 2790 pub const KSMEMORY_TYPE_KERNEL_NONPAGED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1248681924, data2: 30869, data3: 4561, data4: [176, 105, 0, 160, 201, 6, 40, 2] }; 2791 pub const KSMEMORY_TYPE_KERNEL_PAGED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3627284728, data2: 30868, data3: 4561, data4: [176, 105, 0, 160, 201, 6, 40, 2] }; 2792 pub const KSMEMORY_TYPE_SYSTEM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 152811064, data2: 24639, data3: 4561, data4: [176, 103, 0, 160, 201, 6, 40, 2] }; 2793 pub const KSMEMORY_TYPE_USER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2360409128, data2: 30867, data3: 4561, data4: [176, 105, 0, 160, 201, 6, 40, 2] }; 2794 pub const KSMETHODSETID_StreamAllocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3480109889, data2: 60551, data3: 4559, data4: [161, 48, 0, 32, 175, 209, 86, 228] }; 2795 pub const KSMETHODSETID_StreamIo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1708131274, data2: 5411, data3: 4562, data4: [178, 122, 0, 160, 201, 34, 49, 150] }; 2796 pub const KSMETHODSETID_Wavetable: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3706663403, data2: 55559, data3: 4560, data4: [149, 131, 0, 192, 79, 185, 37, 211] }; 2797 pub type KSMETHOD_STREAMALLOCATOR = i32; 2798 pub const KSMETHOD_STREAMALLOCATOR_ALLOC: KSMETHOD_STREAMALLOCATOR = 0i32; 2799 pub const KSMETHOD_STREAMALLOCATOR_FREE: KSMETHOD_STREAMALLOCATOR = 1i32; 2800 pub type KSMETHOD_STREAMIO = i32; 2801 pub const KSMETHOD_STREAMIO_READ: KSMETHOD_STREAMIO = 0i32; 2802 pub const KSMETHOD_STREAMIO_WRITE: KSMETHOD_STREAMIO = 1i32; 2803 pub const KSMETHOD_TYPE_BASICSUPPORT: u32 = 512u32; 2804 pub const KSMETHOD_TYPE_MODIFY: u32 = 3u32; 2805 pub const KSMETHOD_TYPE_NONE: u32 = 0u32; 2806 pub const KSMETHOD_TYPE_READ: u32 = 1u32; 2807 pub const KSMETHOD_TYPE_SEND: u32 = 1u32; 2808 pub const KSMETHOD_TYPE_SETSUPPORT: u32 = 256u32; 2809 pub const KSMETHOD_TYPE_SOURCE: u32 = 4u32; 2810 pub const KSMETHOD_TYPE_TOPOLOGY: u32 = 268435456u32; 2811 pub const KSMETHOD_TYPE_WRITE: u32 = 2u32; 2812 pub type KSMETHOD_WAVETABLE = i32; 2813 pub const KSMETHOD_WAVETABLE_WAVE_ALLOC: KSMETHOD_WAVETABLE = 0i32; 2814 pub const KSMETHOD_WAVETABLE_WAVE_FREE: KSMETHOD_WAVETABLE = 1i32; 2815 pub const KSMETHOD_WAVETABLE_WAVE_FIND: KSMETHOD_WAVETABLE = 2i32; 2816 pub const KSMETHOD_WAVETABLE_WAVE_WRITE: KSMETHOD_WAVETABLE = 3i32; 2817 pub const KSMETHOD_WAVE_QUEUED_BREAKLOOP: u32 = 1u32; 2818 pub const KSMFT_CATEGORY_AUDIO_DECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2661760948, data2: 61306, data3: 17753, data4: [141, 93, 113, 157, 143, 4, 38, 199] }; 2819 pub const KSMFT_CATEGORY_AUDIO_EFFECT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 285625416, data2: 13896, data3: 20176, data4: [147, 46, 5, 206, 138, 200, 17, 183] }; 2820 pub const KSMFT_CATEGORY_AUDIO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2821 data1: 2445691856, 2822 data2: 63774, 2823 data3: 19852, 2824 data4: [146, 118, 219, 36, 130, 121, 217, 117], 2825 }; 2826 pub const KSMFT_CATEGORY_DEMULTIPLEXER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2827 data1: 2825915002, 2828 data2: 37787, 2829 data3: 17605, 2830 data4: [153, 215, 118, 34, 107, 35, 179, 241], 2831 }; 2832 pub const KSMFT_CATEGORY_MULTIPLEXER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 94131742, data2: 1454, data3: 19297, data4: [182, 157, 85, 182, 30, 229, 74, 123] }; 2833 pub const KSMFT_CATEGORY_OTHER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2834 data1: 2417450327, 2835 data2: 47082, 2836 data3: 18689, 2837 data4: [174, 179, 147, 58, 135, 71, 117, 111], 2838 }; 2839 pub const KSMFT_CATEGORY_VIDEO_DECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3602918731, data2: 26675, data3: 17844, data4: [151, 26, 5, 164, 176, 75, 171, 145] }; 2840 pub const KSMFT_CATEGORY_VIDEO_EFFECT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 316767265, data2: 21292, data3: 19054, data4: [138, 28, 64, 130, 90, 115, 99, 151] }; 2841 pub const KSMFT_CATEGORY_VIDEO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2842 data1: 4154371197, 2843 data2: 58693, 2844 data3: 17287, 2845 data4: [189, 238, 214, 71, 215, 189, 228, 42], 2846 }; 2847 pub const KSMFT_CATEGORY_VIDEO_PROCESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808363004, data2: 43615, data3: 18425, data4: [159, 122, 194, 24, 139, 177, 99, 2] }; 2848 pub type KSMICARRAY_MICARRAYTYPE = i32; 2849 pub const KSMICARRAY_MICARRAYTYPE_LINEAR: KSMICARRAY_MICARRAYTYPE = 0i32; 2850 pub const KSMICARRAY_MICARRAYTYPE_PLANAR: KSMICARRAY_MICARRAYTYPE = 1i32; 2851 pub const KSMICARRAY_MICARRAYTYPE_3D: KSMICARRAY_MICARRAYTYPE = 2i32; 2852 pub type KSMICARRAY_MICTYPE = i32; 2853 pub const KSMICARRAY_MICTYPE_OMNIDIRECTIONAL: KSMICARRAY_MICTYPE = 0i32; 2854 pub const KSMICARRAY_MICTYPE_SUBCARDIOID: KSMICARRAY_MICTYPE = 1i32; 2855 pub const KSMICARRAY_MICTYPE_CARDIOID: KSMICARRAY_MICTYPE = 2i32; 2856 pub const KSMICARRAY_MICTYPE_SUPERCARDIOID: KSMICARRAY_MICTYPE = 3i32; 2857 pub const KSMICARRAY_MICTYPE_HYPERCARDIOID: KSMICARRAY_MICTYPE = 4i32; 2858 pub const KSMICARRAY_MICTYPE_8SHAPED: KSMICARRAY_MICTYPE = 5i32; 2859 pub const KSMICARRAY_MICTYPE_VENDORDEFINED: KSMICARRAY_MICTYPE = 15i32; 2860 pub const KSMPEGVIDMODE_LTRBOX: u32 = 2u32; 2861 pub const KSMPEGVIDMODE_PANSCAN: u32 = 1u32; 2862 pub const KSMPEGVIDMODE_SCALE: u32 = 4u32; 2863 #[repr(C)] 2864 pub struct KSMPEGVID_RECT { 2865 pub StartX: u32, 2866 pub StartY: u32, 2867 pub EndX: u32, 2868 pub EndY: u32, 2869 } 2870 impl ::core::marker::Copy for KSMPEGVID_RECT {} 2871 impl ::core::clone::Clone for KSMPEGVID_RECT { clone(&self) -> Self2872 fn clone(&self) -> Self { 2873 *self 2874 } 2875 } 2876 #[repr(C)] 2877 pub struct KSMULTIPLE_DATA_PROP { 2878 pub Property: KSIDENTIFIER, 2879 pub MultipleItem: KSMULTIPLE_ITEM, 2880 } 2881 impl ::core::marker::Copy for KSMULTIPLE_DATA_PROP {} 2882 impl ::core::clone::Clone for KSMULTIPLE_DATA_PROP { clone(&self) -> Self2883 fn clone(&self) -> Self { 2884 *self 2885 } 2886 } 2887 #[repr(C)] 2888 pub struct KSMULTIPLE_ITEM { 2889 pub Size: u32, 2890 pub Count: u32, 2891 } 2892 impl ::core::marker::Copy for KSMULTIPLE_ITEM {} 2893 impl ::core::clone::Clone for KSMULTIPLE_ITEM { clone(&self) -> Self2894 fn clone(&self) -> Self { 2895 *self 2896 } 2897 } 2898 #[repr(C)] 2899 pub struct KSMUSICFORMAT { 2900 pub TimeDeltaMs: u32, 2901 pub ByteCount: u32, 2902 } 2903 impl ::core::marker::Copy for KSMUSICFORMAT {} 2904 impl ::core::clone::Clone for KSMUSICFORMAT { clone(&self) -> Self2905 fn clone(&self) -> Self { 2906 *self 2907 } 2908 } 2909 pub const KSMUSIC_TECHNOLOGY_FMSYNTH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 623664256, data2: 25321, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2910 pub const KSMUSIC_TECHNOLOGY_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2261331552, data2: 25320, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2911 pub const KSMUSIC_TECHNOLOGY_SQSYNTH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 248464256, data2: 25321, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2912 pub const KSMUSIC_TECHNOLOGY_SWSYNTH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 926971702, data2: 13856, data3: 4561, data4: [133, 211, 0, 0, 248, 117, 67, 128] }; 2913 pub const KSMUSIC_TECHNOLOGY_WAVETABLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 961464256, data2: 25321, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2914 #[repr(C)] 2915 pub struct KSM_NODE { 2916 pub Method: KSIDENTIFIER, 2917 pub NodeId: u32, 2918 pub Reserved: u32, 2919 } 2920 impl ::core::marker::Copy for KSM_NODE {} 2921 impl ::core::clone::Clone for KSM_NODE { clone(&self) -> Self2922 fn clone(&self) -> Self { 2923 *self 2924 } 2925 } 2926 pub const KSNAME_Allocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1680825600, data2: 18321, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2927 pub const KSNAME_Clock: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1394025600, data2: 18321, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2928 pub const KSNAME_Filter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2604030096, data2: 5727, data3: 4560, data4: [161, 149, 0, 32, 175, 209, 86, 228] }; 2929 pub const KSNAME_Pin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 342825600, data2: 18321, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 2930 pub const KSNAME_TopologyNode: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 102827546, data2: 61045, data3: 4560, data4: [185, 21, 0, 160, 201, 34, 49, 150] }; 2931 pub const KSNODEPIN_AEC_CAPTURE_IN: u32 = 2u32; 2932 pub const KSNODEPIN_AEC_CAPTURE_OUT: u32 = 3u32; 2933 pub const KSNODEPIN_AEC_RENDER_IN: u32 = 1u32; 2934 pub const KSNODEPIN_AEC_RENDER_OUT: u32 = 0u32; 2935 pub const KSNODEPIN_DEMUX_IN: u32 = 0u32; 2936 pub const KSNODEPIN_DEMUX_OUT: u32 = 1u32; 2937 pub const KSNODEPIN_STANDARD_IN: u32 = 1u32; 2938 pub const KSNODEPIN_STANDARD_OUT: u32 = 0u32; 2939 pub const KSNODEPIN_SUM_MUX_IN: u32 = 1u32; 2940 pub const KSNODEPIN_SUM_MUX_OUT: u32 = 0u32; 2941 #[repr(C)] 2942 pub struct KSNODEPROPERTY { 2943 pub Property: KSIDENTIFIER, 2944 pub NodeId: u32, 2945 pub Reserved: u32, 2946 } 2947 impl ::core::marker::Copy for KSNODEPROPERTY {} 2948 impl ::core::clone::Clone for KSNODEPROPERTY { clone(&self) -> Self2949 fn clone(&self) -> Self { 2950 *self 2951 } 2952 } 2953 #[repr(C)] 2954 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 2955 pub struct KSNODEPROPERTY_AUDIO_3D_LISTENER { 2956 pub NodeProperty: KSNODEPROPERTY, 2957 pub ListenerId: *mut ::core::ffi::c_void, 2958 } 2959 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 2960 impl ::core::marker::Copy for KSNODEPROPERTY_AUDIO_3D_LISTENER {} 2961 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 2962 impl ::core::clone::Clone for KSNODEPROPERTY_AUDIO_3D_LISTENER { clone(&self) -> Self2963 fn clone(&self) -> Self { 2964 *self 2965 } 2966 } 2967 #[repr(C)] 2968 #[cfg(any(target_arch = "x86",))] 2969 pub struct KSNODEPROPERTY_AUDIO_3D_LISTENER { 2970 pub NodeProperty: KSNODEPROPERTY, 2971 pub ListenerId: *mut ::core::ffi::c_void, 2972 pub Reserved: u32, 2973 } 2974 #[cfg(any(target_arch = "x86",))] 2975 impl ::core::marker::Copy for KSNODEPROPERTY_AUDIO_3D_LISTENER {} 2976 #[cfg(any(target_arch = "x86",))] 2977 impl ::core::clone::Clone for KSNODEPROPERTY_AUDIO_3D_LISTENER { clone(&self) -> Self2978 fn clone(&self) -> Self { 2979 *self 2980 } 2981 } 2982 #[repr(C)] 2983 pub struct KSNODEPROPERTY_AUDIO_CHANNEL { 2984 pub NodeProperty: KSNODEPROPERTY, 2985 pub Channel: i32, 2986 pub Reserved: u32, 2987 } 2988 impl ::core::marker::Copy for KSNODEPROPERTY_AUDIO_CHANNEL {} 2989 impl ::core::clone::Clone for KSNODEPROPERTY_AUDIO_CHANNEL { clone(&self) -> Self2990 fn clone(&self) -> Self { 2991 *self 2992 } 2993 } 2994 #[repr(C)] 2995 pub struct KSNODEPROPERTY_AUDIO_DEV_SPECIFIC { 2996 pub NodeProperty: KSNODEPROPERTY, 2997 pub DevSpecificId: u32, 2998 pub DeviceInfo: u32, 2999 pub Length: u32, 3000 } 3001 impl ::core::marker::Copy for KSNODEPROPERTY_AUDIO_DEV_SPECIFIC {} 3002 impl ::core::clone::Clone for KSNODEPROPERTY_AUDIO_DEV_SPECIFIC { clone(&self) -> Self3003 fn clone(&self) -> Self { 3004 *self 3005 } 3006 } 3007 #[repr(C)] 3008 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 3009 pub struct KSNODEPROPERTY_AUDIO_PROPERTY { 3010 pub NodeProperty: KSNODEPROPERTY, 3011 pub AppContext: *mut ::core::ffi::c_void, 3012 pub Length: u32, 3013 } 3014 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 3015 impl ::core::marker::Copy for KSNODEPROPERTY_AUDIO_PROPERTY {} 3016 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 3017 impl ::core::clone::Clone for KSNODEPROPERTY_AUDIO_PROPERTY { clone(&self) -> Self3018 fn clone(&self) -> Self { 3019 *self 3020 } 3021 } 3022 #[repr(C)] 3023 #[cfg(any(target_arch = "x86",))] 3024 pub struct KSNODEPROPERTY_AUDIO_PROPERTY { 3025 pub NodeProperty: KSNODEPROPERTY, 3026 pub AppContext: *mut ::core::ffi::c_void, 3027 pub Length: u32, 3028 pub Reserved: u32, 3029 } 3030 #[cfg(any(target_arch = "x86",))] 3031 impl ::core::marker::Copy for KSNODEPROPERTY_AUDIO_PROPERTY {} 3032 #[cfg(any(target_arch = "x86",))] 3033 impl ::core::clone::Clone for KSNODEPROPERTY_AUDIO_PROPERTY { clone(&self) -> Self3034 fn clone(&self) -> Self { 3035 *self 3036 } 3037 } 3038 pub const KSNODETYPE_1394_DA_STREAM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187046, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3039 pub const KSNODETYPE_1394_DV_STREAM_SOUNDTRACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187047, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3040 pub const KSNODETYPE_3D_EFFECTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1431394400, data2: 50521, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3041 pub const KSNODETYPE_ADC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1300463584, data2: 50517, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3042 pub const KSNODETYPE_AGC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3901528992, data2: 50519, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3043 pub const KSNODETYPE_ANALOG_CONNECTOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187041, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3044 pub const KSNODETYPE_ANALOG_TAPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187303, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3045 pub const KSNODETYPE_AUDIO_ENGINE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 902493924, data2: 62387, data3: 16744, data4: [187, 75, 85, 231, 122, 70, 28, 126] }; 3046 pub const KSNODETYPE_AUDIO_KEYWORDDETECTOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 941088952, data2: 57176, data3: 17269, data4: [182, 105, 196, 150, 52, 51, 31, 157] }; 3047 pub const KSNODETYPE_AUDIO_LOOPBACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2403516594, data2: 37326, data3: 19407, data4: [156, 205, 14, 89, 144, 55, 171, 53] }; 3048 pub const KSNODETYPE_AUDIO_MODULE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3049 data1: 1168815150, 3050 data2: 51947, 3051 data3: 16466, 3052 data4: [138, 169, 179, 140, 181, 16, 150, 25], 3053 }; 3054 pub const KSNODETYPE_BIDIRECTIONAL_UNDEFINED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186528, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3055 pub const KSNODETYPE_CABLE_TUNER_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187310, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3056 pub const KSNODETYPE_CD_PLAYER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187299, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3057 pub const KSNODETYPE_CHORUS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 538394400, data2: 50521, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3058 pub const KSNODETYPE_COMMUNICATION_SPEAKER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186278, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3059 pub const KSNODETYPE_DAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1350230880, data2: 50516, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3060 pub const KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187300, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3061 pub const KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187301, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3062 pub const KSNODETYPE_DELAY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 340361696, data2: 50520, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3063 pub const KSNODETYPE_DEMUX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3236653012, data2: 59399, data3: 4560, data4: [149, 138, 0, 192, 79, 185, 37, 211] }; 3064 pub const KSNODETYPE_DESKTOP_MICROPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186018, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3065 pub const KSNODETYPE_DESKTOP_SPEAKER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186276, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3066 pub const KSNODETYPE_DEV_SPECIFIC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2484894400, data2: 50521, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3067 pub const KSNODETYPE_DIGITAL_AUDIO_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187042, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3068 pub const KSNODETYPE_DISPLAYPORT_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3069 data1: 3833479217, 3070 data2: 16038, 3071 data3: 16781, 3072 data4: [143, 155, 183, 56, 67, 204, 186, 151], 3073 }; 3074 pub const KSNODETYPE_DOWN_LINE_PHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186787, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3075 pub const KSNODETYPE_DRM_DESCRAMBLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4290473535, data2: 52478, data3: 19844, data4: [144, 217, 66, 20, 24, 176, 58, 142] }; 3076 pub const KSNODETYPE_DSS_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187311, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3077 pub const KSNODETYPE_DVD_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187307, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3078 pub const KSNODETYPE_DYN_RANGE_COMPRESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 147367592, data2: 24607, data3: 19192, data4: [135, 147, 217, 5, 255, 76, 169, 125] }; 3079 pub const KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186533, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3080 pub const KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186532, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3081 pub const KSNODETYPE_EMBEDDED_UNDEFINED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187296, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3082 pub const KSNODETYPE_EQUALIZATION_NOISE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187298, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3083 pub const KSNODETYPE_EQUALIZER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2638328992, data2: 50519, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3084 pub const KSNODETYPE_EXTERNAL_UNDEFINED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187040, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3085 pub const KSNODETYPE_FM_RX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2202694460, data2: 62597, data3: 16832, data4: [166, 43, 81, 48, 37, 1, 78, 64] }; 3086 pub const KSNODETYPE_HANDSET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186529, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3087 pub const KSNODETYPE_HDMI_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3518614570, data2: 62745, data3: 16767, data4: [145, 201, 85, 250, 101, 72, 16, 1] }; 3088 pub const KSNODETYPE_HEADPHONES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186274, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3089 pub const KSNODETYPE_HEADSET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186530, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3090 pub const KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186275, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3091 pub const KSNODETYPE_INPUT_UNDEFINED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186016, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3092 pub const KSNODETYPE_LEGACY_AUDIO_CONNECTOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187044, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3093 pub const KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187297, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3094 pub const KSNODETYPE_LINE_CONNECTOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187043, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3095 pub const KSNODETYPE_LOUDNESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1099461696, data2: 50520, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3096 pub const KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186279, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3097 pub const KSNODETYPE_MICROPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186017, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3098 pub const KSNODETYPE_MICROPHONE_ARRAY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186021, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3099 pub const KSNODETYPE_MIDI_ELEMENT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 29818470, data2: 28232, data3: 19557, data4: [172, 155, 82, 219, 93, 101, 108, 126] }; 3100 pub const KSNODETYPE_MIDI_JACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 643697727, data2: 64057, data3: 19955, data4: [171, 4, 190, 1, 185, 30, 41, 154] }; 3101 pub const KSNODETYPE_MINIDISK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187302, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3102 pub const KSNODETYPE_MULTITRACK_RECORDER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187314, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3103 pub const KSNODETYPE_MUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 45228992, data2: 50519, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3104 pub const KSNODETYPE_MUX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 753596288, data2: 50518, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3105 pub const KSNODETYPE_NOISE_SUPPRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3106 data1: 3766456383, 3107 data2: 25341, 3108 data3: 20064, 3109 data4: [140, 221, 222, 167, 35, 102, 101, 181], 3110 }; 3111 pub const KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186020, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3112 pub const KSNODETYPE_OUTPUT_UNDEFINED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186272, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3113 pub const KSNODETYPE_PARAMETRIC_EQUALIZER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3114 data1: 431700586, 3115 data2: 52779, 3116 data3: 17474, 3117 data4: [135, 236, 103, 39, 195, 202, 180, 119], 3118 }; 3119 pub const KSNODETYPE_PEAKMETER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3120 data1: 2693096734, 3121 data2: 24333, 3122 data3: 19254, 3123 data4: [168, 105, 209, 149, 214, 171, 75, 158], 3124 }; 3125 pub const KSNODETYPE_PERSONAL_MICROPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186019, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3126 pub const KSNODETYPE_PHONE_LINE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186785, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3127 pub const KSNODETYPE_PHONOGRAPH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187304, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3128 pub const KSNODETYPE_PROCESSING_MICROPHONE_ARRAY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186022, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3129 pub const KSNODETYPE_PROLOGIC_DECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2199661696, data2: 50520, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3130 pub const KSNODETYPE_PROLOGIC_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2155136434, data2: 15462, data3: 4562, data4: [180, 90, 48, 120, 48, 44, 32, 48] }; 3131 pub const KSNODETYPE_RADIO_RECEIVER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187312, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3132 pub const KSNODETYPE_RADIO_TRANSMITTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187313, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3133 pub const KSNODETYPE_REVERB: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4009961696, data2: 50520, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3134 pub const KSNODETYPE_ROOM_SPEAKER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186277, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3135 pub const KSNODETYPE_SATELLITE_RECEIVER_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187309, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3136 pub const KSNODETYPE_SPDIF_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187045, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3137 pub const KSNODETYPE_SPEAKER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186273, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3138 pub const KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186531, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3139 pub const KSNODETYPE_SPEAKERS_STATIC_JACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 685789063, data2: 19902, data3: 20365, data4: [133, 137, 2, 93, 32, 157, 251, 74] }; 3140 pub const KSNODETYPE_SRC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2646063584, data2: 50517, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3141 pub const KSNODETYPE_STEREO_WIDE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2850461696, data2: 50520, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3142 pub const KSNODETYPE_SUM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3661896288, data2: 50518, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3143 pub const KSNODETYPE_SUPERMIX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3849563584, data2: 50517, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3144 pub const KSNODETYPE_SYNTHESIZER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187315, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3145 pub const KSNODETYPE_TELEPHONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186786, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3146 pub const KSNODETYPE_TELEPHONY_BIDI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1752005824, data2: 55555, data3: 16984, data4: [180, 67, 58, 61, 53, 128, 116, 28] }; 3147 pub const KSNODETYPE_TELEPHONY_UNDEFINED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757186784, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3148 pub const KSNODETYPE_TONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1980228992, data2: 50519, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3149 pub const KSNODETYPE_TV_TUNER_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187308, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3150 pub const KSNODETYPE_UPDOWN_MIX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3085813199, data2: 31587, data3: 20194, data4: [161, 0, 41, 238, 44, 182, 178, 222] }; 3151 pub const KSNODETYPE_VCR_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187305, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3152 pub const KSNODETYPE_VIDEO_CAMERA_TERMINAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189606, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3153 pub const KSNODETYPE_VIDEO_DISC_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757187306, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3154 pub const KSNODETYPE_VIDEO_INPUT_MTT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189607, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3155 pub const KSNODETYPE_VIDEO_INPUT_TERMINAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189602, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3156 pub const KSNODETYPE_VIDEO_OUTPUT_MTT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189608, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3157 pub const KSNODETYPE_VIDEO_OUTPUT_TERMINAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189603, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3158 pub const KSNODETYPE_VIDEO_PROCESSING: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189605, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3159 pub const KSNODETYPE_VIDEO_SELECTOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189604, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3160 pub const KSNODETYPE_VIDEO_STREAMING: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3757189601, data2: 63247, data3: 4560, data4: [185, 23, 0, 160, 201, 34, 49, 150] }; 3161 pub const KSNODETYPE_VOLUME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 979028992, data2: 50519, data3: 4560, data4: [138, 43, 0, 160, 201, 37, 90, 193] }; 3162 #[repr(C)] 3163 pub struct KSNODE_CREATE { 3164 pub CreateFlags: u32, 3165 pub Node: u32, 3166 } 3167 impl ::core::marker::Copy for KSNODE_CREATE {} 3168 impl ::core::clone::Clone for KSNODE_CREATE { clone(&self) -> Self3169 fn clone(&self) -> Self { 3170 *self 3171 } 3172 } 3173 pub const KSNOTIFICATIONID_AudioModule: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2619482352, data2: 55718, data3: 19804, data4: [160, 54, 87, 56, 87, 253, 80, 210] }; 3174 pub const KSNOTIFICATIONID_SoundDetector: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3175 data1: 1669978180, 3176 data2: 47922, 3177 data3: 19532, 3178 data4: [168, 2, 244, 180, 183, 122, 254, 173], 3179 }; 3180 #[repr(C)] 3181 pub struct KSPIN_CINSTANCES { 3182 pub PossibleCount: u32, 3183 pub CurrentCount: u32, 3184 } 3185 impl ::core::marker::Copy for KSPIN_CINSTANCES {} 3186 impl ::core::clone::Clone for KSPIN_CINSTANCES { clone(&self) -> Self3187 fn clone(&self) -> Self { 3188 *self 3189 } 3190 } 3191 pub type KSPIN_COMMUNICATION = i32; 3192 pub const KSPIN_COMMUNICATION_NONE: KSPIN_COMMUNICATION = 0i32; 3193 pub const KSPIN_COMMUNICATION_SINK: KSPIN_COMMUNICATION = 1i32; 3194 pub const KSPIN_COMMUNICATION_SOURCE: KSPIN_COMMUNICATION = 2i32; 3195 pub const KSPIN_COMMUNICATION_BOTH: KSPIN_COMMUNICATION = 3i32; 3196 pub const KSPIN_COMMUNICATION_BRIDGE: KSPIN_COMMUNICATION = 4i32; 3197 #[repr(C)] 3198 #[cfg(feature = "Win32_Foundation")] 3199 pub struct KSPIN_CONNECT { 3200 pub Interface: KSIDENTIFIER, 3201 pub Medium: KSIDENTIFIER, 3202 pub PinId: u32, 3203 pub PinToHandle: super::super::Foundation::HANDLE, 3204 pub Priority: KSPRIORITY, 3205 } 3206 #[cfg(feature = "Win32_Foundation")] 3207 impl ::core::marker::Copy for KSPIN_CONNECT {} 3208 #[cfg(feature = "Win32_Foundation")] 3209 impl ::core::clone::Clone for KSPIN_CONNECT { clone(&self) -> Self3210 fn clone(&self) -> Self { 3211 *self 3212 } 3213 } 3214 pub type KSPIN_DATAFLOW = i32; 3215 pub const KSPIN_DATAFLOW_IN: KSPIN_DATAFLOW = 1i32; 3216 pub const KSPIN_DATAFLOW_OUT: KSPIN_DATAFLOW = 2i32; 3217 pub const KSPIN_FLAG_ASYNCHRONOUS_PROCESSING: u32 = 8u32; 3218 pub const KSPIN_FLAG_CRITICAL_PROCESSING: u32 = 2u32; 3219 pub const KSPIN_FLAG_DENY_USERMODE_ACCESS: u32 = 2147483648u32; 3220 pub const KSPIN_FLAG_DISPATCH_LEVEL_PROCESSING: u32 = 1u32; 3221 pub const KSPIN_FLAG_DISTINCT_TRAILING_EDGE: u32 = 512u32; 3222 pub const KSPIN_FLAG_DO_NOT_INITIATE_PROCESSING: u32 = 16u32; 3223 pub const KSPIN_FLAG_DO_NOT_USE_STANDARD_TRANSPORT: u32 = 524288u32; 3224 pub const KSPIN_FLAG_ENFORCE_FIFO: u32 = 128u32; 3225 pub const KSPIN_FLAG_FIXED_FORMAT: u32 = 1048576u32; 3226 pub const KSPIN_FLAG_FRAMES_NOT_REQUIRED_FOR_PROCESSING: u32 = 64u32; 3227 pub const KSPIN_FLAG_GENERATE_EOS_EVENTS: u32 = 2097152u32; 3228 pub const KSPIN_FLAG_GENERATE_MAPPINGS: u32 = 256u32; 3229 pub const KSPIN_FLAG_HYPERCRITICAL_PROCESSING: u32 = 4u32; 3230 pub const KSPIN_FLAG_IMPLEMENT_CLOCK: u32 = 4194304u32; 3231 pub const KSPIN_FLAG_INITIATE_PROCESSING_ON_EVERY_ARRIVAL: u32 = 32u32; 3232 pub const KSPIN_FLAG_PROCESS_IF_ANY_IN_RUN_STATE: u32 = 16777216u32; 3233 pub const KSPIN_FLAG_PROCESS_IN_RUN_STATE_ONLY: u32 = 65536u32; 3234 pub const KSPIN_FLAG_SOME_FRAMES_REQUIRED_FOR_PROCESSING: u32 = 8388608u32; 3235 pub const KSPIN_FLAG_SPLITTER: u32 = 131072u32; 3236 pub const KSPIN_FLAG_USE_STANDARD_TRANSPORT: u32 = 262144u32; 3237 pub type KSPIN_MDL_CACHING_EVENT = i32; 3238 pub const KSPIN_MDL_CACHING_NOTIFY_CLEANUP: KSPIN_MDL_CACHING_EVENT = 0i32; 3239 pub const KSPIN_MDL_CACHING_NOTIFY_CLEANALL_WAIT: KSPIN_MDL_CACHING_EVENT = 1i32; 3240 pub const KSPIN_MDL_CACHING_NOTIFY_CLEANALL_NOWAIT: KSPIN_MDL_CACHING_EVENT = 2i32; 3241 pub const KSPIN_MDL_CACHING_NOTIFY_ADDSAMPLE: KSPIN_MDL_CACHING_EVENT = 3i32; 3242 #[repr(C)] 3243 pub struct KSPIN_MDL_CACHING_NOTIFICATION { 3244 pub Event: KSPIN_MDL_CACHING_EVENT, 3245 pub Buffer: *mut ::core::ffi::c_void, 3246 } 3247 impl ::core::marker::Copy for KSPIN_MDL_CACHING_NOTIFICATION {} 3248 impl ::core::clone::Clone for KSPIN_MDL_CACHING_NOTIFICATION { clone(&self) -> Self3249 fn clone(&self) -> Self { 3250 *self 3251 } 3252 } 3253 #[repr(C)] 3254 pub struct KSPIN_MDL_CACHING_NOTIFICATION32 { 3255 pub Event: KSPIN_MDL_CACHING_EVENT, 3256 pub Buffer: u32, 3257 } 3258 impl ::core::marker::Copy for KSPIN_MDL_CACHING_NOTIFICATION32 {} 3259 impl ::core::clone::Clone for KSPIN_MDL_CACHING_NOTIFICATION32 { clone(&self) -> Self3260 fn clone(&self) -> Self { 3261 *self 3262 } 3263 } 3264 #[repr(C)] 3265 pub struct KSPIN_PHYSICALCONNECTION { 3266 pub Size: u32, 3267 pub Pin: u32, 3268 pub SymbolicLinkName: [u16; 1], 3269 } 3270 impl ::core::marker::Copy for KSPIN_PHYSICALCONNECTION {} 3271 impl ::core::clone::Clone for KSPIN_PHYSICALCONNECTION { clone(&self) -> Self3272 fn clone(&self) -> Self { 3273 *self 3274 } 3275 } 3276 pub type KSPPROPERTY_ALLOCATOR_MDLCACHING = i32; 3277 pub const KSPROPERTY_ALLOCATOR_CLEANUP_CACHEDMDLPAGES: KSPPROPERTY_ALLOCATOR_MDLCACHING = 1i32; 3278 #[repr(C)] 3279 pub struct KSPRIORITY { 3280 pub PriorityClass: u32, 3281 pub PrioritySubClass: u32, 3282 } 3283 impl ::core::marker::Copy for KSPRIORITY {} 3284 impl ::core::clone::Clone for KSPRIORITY { clone(&self) -> Self3285 fn clone(&self) -> Self { 3286 *self 3287 } 3288 } 3289 pub const KSPRIORITY_EXCLUSIVE: u32 = 4294967295u32; 3290 pub const KSPRIORITY_HIGH: u32 = 2147483648u32; 3291 pub const KSPRIORITY_LOW: u32 = 1u32; 3292 pub const KSPRIORITY_NORMAL: u32 = 1073741824u32; 3293 pub const KSPROBE_ALLOCATEMDL: u32 = 16u32; 3294 pub const KSPROBE_ALLOWFORMATCHANGE: u32 = 128u32; 3295 pub const KSPROBE_MODIFY: u32 = 512u32; 3296 pub const KSPROBE_PROBEANDLOCK: u32 = 32u32; 3297 pub const KSPROBE_STREAMREAD: u32 = 0u32; 3298 pub const KSPROBE_STREAMWRITE: u32 = 1u32; 3299 pub const KSPROBE_SYSTEMADDRESS: u32 = 64u32; 3300 pub const KSPROPERTYSETID_ExtendedCameraControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3301 data1: 481792274, 3302 data2: 49362, 3303 data3: 16915, 3304 data4: [156, 166, 205, 79, 219, 146, 121, 114], 3305 }; 3306 pub const KSPROPERTYSETID_NetworkCameraControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3307 data1: 242749193, 3308 data2: 22341, 3309 data3: 20026, 3310 data4: [188, 159, 242, 38, 234, 67, 166, 236], 3311 }; 3312 pub const KSPROPERTYSETID_PerFrameSettingControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3313 data1: 4059292257, 3314 data2: 57062, 3315 data3: 17719, 3316 data4: [191, 245, 238, 32, 109, 181, 74, 172], 3317 }; 3318 pub type KSPROPERTY_AC3 = i32; 3319 pub const KSPROPERTY_AC3_ERROR_CONCEALMENT: KSPROPERTY_AC3 = 1i32; 3320 pub const KSPROPERTY_AC3_ALTERNATE_AUDIO: KSPROPERTY_AC3 = 2i32; 3321 pub const KSPROPERTY_AC3_DOWNMIX: KSPROPERTY_AC3 = 3i32; 3322 pub const KSPROPERTY_AC3_BIT_STREAM_MODE: KSPROPERTY_AC3 = 4i32; 3323 pub const KSPROPERTY_AC3_DIALOGUE_LEVEL: KSPROPERTY_AC3 = 5i32; 3324 pub const KSPROPERTY_AC3_LANGUAGE_CODE: KSPROPERTY_AC3 = 6i32; 3325 pub const KSPROPERTY_AC3_ROOM_TYPE: KSPROPERTY_AC3 = 7i32; 3326 pub type KSPROPERTY_ALLOCATOR_CONTROL = i32; 3327 pub const KSPROPERTY_ALLOCATOR_CONTROL_HONOR_COUNT: KSPROPERTY_ALLOCATOR_CONTROL = 0i32; 3328 pub const KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE: KSPROPERTY_ALLOCATOR_CONTROL = 1i32; 3329 pub const KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS: KSPROPERTY_ALLOCATOR_CONTROL = 2i32; 3330 pub const KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE: KSPROPERTY_ALLOCATOR_CONTROL = 3i32; 3331 #[repr(C)] 3332 pub struct KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S { 3333 pub InterleavedCapSupported: u32, 3334 } 3335 impl ::core::marker::Copy for KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S {} 3336 impl ::core::clone::Clone for KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S { clone(&self) -> Self3337 fn clone(&self) -> Self { 3338 *self 3339 } 3340 } 3341 #[repr(C)] 3342 pub struct KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S { 3343 pub InterleavedCapPossible: u32, 3344 } 3345 impl ::core::marker::Copy for KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S {} 3346 impl ::core::clone::Clone for KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S { clone(&self) -> Self3347 fn clone(&self) -> Self { 3348 *self 3349 } 3350 } 3351 #[repr(C)] 3352 pub struct KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S { 3353 pub CX: u32, 3354 pub CY: u32, 3355 } 3356 impl ::core::marker::Copy for KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S {} 3357 impl ::core::clone::Clone for KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S { clone(&self) -> Self3358 fn clone(&self) -> Self { 3359 *self 3360 } 3361 } 3362 pub type KSPROPERTY_AUDDECOUT = i32; 3363 pub const KSPROPERTY_AUDDECOUT_MODES: KSPROPERTY_AUDDECOUT = 0i32; 3364 pub const KSPROPERTY_AUDDECOUT_CUR_MODE: KSPROPERTY_AUDDECOUT = 1i32; 3365 pub type KSPROPERTY_AUDIO = i32; 3366 pub const KSPROPERTY_AUDIO_LATENCY: KSPROPERTY_AUDIO = 1i32; 3367 pub const KSPROPERTY_AUDIO_COPY_PROTECTION: KSPROPERTY_AUDIO = 2i32; 3368 pub const KSPROPERTY_AUDIO_CHANNEL_CONFIG: KSPROPERTY_AUDIO = 3i32; 3369 pub const KSPROPERTY_AUDIO_VOLUMELEVEL: KSPROPERTY_AUDIO = 4i32; 3370 pub const KSPROPERTY_AUDIO_POSITION: KSPROPERTY_AUDIO = 5i32; 3371 pub const KSPROPERTY_AUDIO_DYNAMIC_RANGE: KSPROPERTY_AUDIO = 6i32; 3372 pub const KSPROPERTY_AUDIO_QUALITY: KSPROPERTY_AUDIO = 7i32; 3373 pub const KSPROPERTY_AUDIO_SAMPLING_RATE: KSPROPERTY_AUDIO = 8i32; 3374 pub const KSPROPERTY_AUDIO_DYNAMIC_SAMPLING_RATE: KSPROPERTY_AUDIO = 9i32; 3375 pub const KSPROPERTY_AUDIO_MIX_LEVEL_TABLE: KSPROPERTY_AUDIO = 10i32; 3376 pub const KSPROPERTY_AUDIO_MIX_LEVEL_CAPS: KSPROPERTY_AUDIO = 11i32; 3377 pub const KSPROPERTY_AUDIO_MUX_SOURCE: KSPROPERTY_AUDIO = 12i32; 3378 pub const KSPROPERTY_AUDIO_MUTE: KSPROPERTY_AUDIO = 13i32; 3379 pub const KSPROPERTY_AUDIO_BASS: KSPROPERTY_AUDIO = 14i32; 3380 pub const KSPROPERTY_AUDIO_MID: KSPROPERTY_AUDIO = 15i32; 3381 pub const KSPROPERTY_AUDIO_TREBLE: KSPROPERTY_AUDIO = 16i32; 3382 pub const KSPROPERTY_AUDIO_BASS_BOOST: KSPROPERTY_AUDIO = 17i32; 3383 pub const KSPROPERTY_AUDIO_EQ_LEVEL: KSPROPERTY_AUDIO = 18i32; 3384 pub const KSPROPERTY_AUDIO_NUM_EQ_BANDS: KSPROPERTY_AUDIO = 19i32; 3385 pub const KSPROPERTY_AUDIO_EQ_BANDS: KSPROPERTY_AUDIO = 20i32; 3386 pub const KSPROPERTY_AUDIO_AGC: KSPROPERTY_AUDIO = 21i32; 3387 pub const KSPROPERTY_AUDIO_DELAY: KSPROPERTY_AUDIO = 22i32; 3388 pub const KSPROPERTY_AUDIO_LOUDNESS: KSPROPERTY_AUDIO = 23i32; 3389 pub const KSPROPERTY_AUDIO_WIDE_MODE: KSPROPERTY_AUDIO = 24i32; 3390 pub const KSPROPERTY_AUDIO_WIDENESS: KSPROPERTY_AUDIO = 25i32; 3391 pub const KSPROPERTY_AUDIO_REVERB_LEVEL: KSPROPERTY_AUDIO = 26i32; 3392 pub const KSPROPERTY_AUDIO_CHORUS_LEVEL: KSPROPERTY_AUDIO = 27i32; 3393 pub const KSPROPERTY_AUDIO_DEV_SPECIFIC: KSPROPERTY_AUDIO = 28i32; 3394 pub const KSPROPERTY_AUDIO_DEMUX_DEST: KSPROPERTY_AUDIO = 29i32; 3395 pub const KSPROPERTY_AUDIO_STEREO_ENHANCE: KSPROPERTY_AUDIO = 30i32; 3396 pub const KSPROPERTY_AUDIO_MANUFACTURE_GUID: KSPROPERTY_AUDIO = 31i32; 3397 pub const KSPROPERTY_AUDIO_PRODUCT_GUID: KSPROPERTY_AUDIO = 32i32; 3398 pub const KSPROPERTY_AUDIO_CPU_RESOURCES: KSPROPERTY_AUDIO = 33i32; 3399 pub const KSPROPERTY_AUDIO_STEREO_SPEAKER_GEOMETRY: KSPROPERTY_AUDIO = 34i32; 3400 pub const KSPROPERTY_AUDIO_SURROUND_ENCODE: KSPROPERTY_AUDIO = 35i32; 3401 pub const KSPROPERTY_AUDIO_3D_INTERFACE: KSPROPERTY_AUDIO = 36i32; 3402 pub const KSPROPERTY_AUDIO_PEAKMETER: KSPROPERTY_AUDIO = 37i32; 3403 pub const KSPROPERTY_AUDIO_ALGORITHM_INSTANCE: KSPROPERTY_AUDIO = 38i32; 3404 pub const KSPROPERTY_AUDIO_FILTER_STATE: KSPROPERTY_AUDIO = 39i32; 3405 pub const KSPROPERTY_AUDIO_PREFERRED_STATUS: KSPROPERTY_AUDIO = 40i32; 3406 pub const KSPROPERTY_AUDIO_PEQ_MAX_BANDS: KSPROPERTY_AUDIO = 41i32; 3407 pub const KSPROPERTY_AUDIO_PEQ_NUM_BANDS: KSPROPERTY_AUDIO = 42i32; 3408 pub const KSPROPERTY_AUDIO_PEQ_BAND_CENTER_FREQ: KSPROPERTY_AUDIO = 43i32; 3409 pub const KSPROPERTY_AUDIO_PEQ_BAND_Q_FACTOR: KSPROPERTY_AUDIO = 44i32; 3410 pub const KSPROPERTY_AUDIO_PEQ_BAND_LEVEL: KSPROPERTY_AUDIO = 45i32; 3411 pub const KSPROPERTY_AUDIO_CHORUS_MODULATION_RATE: KSPROPERTY_AUDIO = 46i32; 3412 pub const KSPROPERTY_AUDIO_CHORUS_MODULATION_DEPTH: KSPROPERTY_AUDIO = 47i32; 3413 pub const KSPROPERTY_AUDIO_REVERB_TIME: KSPROPERTY_AUDIO = 48i32; 3414 pub const KSPROPERTY_AUDIO_REVERB_DELAY_FEEDBACK: KSPROPERTY_AUDIO = 49i32; 3415 pub const KSPROPERTY_AUDIO_POSITIONEX: KSPROPERTY_AUDIO = 50i32; 3416 pub const KSPROPERTY_AUDIO_MIC_ARRAY_GEOMETRY: KSPROPERTY_AUDIO = 51i32; 3417 pub const KSPROPERTY_AUDIO_PRESENTATION_POSITION: KSPROPERTY_AUDIO = 52i32; 3418 pub const KSPROPERTY_AUDIO_WAVERT_CURRENT_WRITE_POSITION: KSPROPERTY_AUDIO = 53i32; 3419 pub const KSPROPERTY_AUDIO_LINEAR_BUFFER_POSITION: KSPROPERTY_AUDIO = 54i32; 3420 pub const KSPROPERTY_AUDIO_PEAKMETER2: KSPROPERTY_AUDIO = 55i32; 3421 pub const KSPROPERTY_AUDIO_WAVERT_CURRENT_WRITE_LASTBUFFER_POSITION: KSPROPERTY_AUDIO = 56i32; 3422 pub const KSPROPERTY_AUDIO_VOLUMELIMIT_ENGAGED: KSPROPERTY_AUDIO = 57i32; 3423 pub const KSPROPERTY_AUDIO_MIC_SENSITIVITY: KSPROPERTY_AUDIO = 58i32; 3424 pub const KSPROPERTY_AUDIO_MIC_SNR: KSPROPERTY_AUDIO = 59i32; 3425 pub const KSPROPERTY_AUDIO_MIC_SENSITIVITY2: KSPROPERTY_AUDIO = 60i32; 3426 pub type KSPROPERTY_AUDIOENGINE = i32; 3427 pub const KSPROPERTY_AUDIOENGINE_LFXENABLE: KSPROPERTY_AUDIOENGINE = 0i32; 3428 pub const KSPROPERTY_AUDIOENGINE_GFXENABLE: KSPROPERTY_AUDIOENGINE = 1i32; 3429 pub const KSPROPERTY_AUDIOENGINE_MIXFORMAT: KSPROPERTY_AUDIOENGINE = 2i32; 3430 pub const KSPROPERTY_AUDIOENGINE_DEVICEFORMAT: KSPROPERTY_AUDIOENGINE = 4i32; 3431 pub const KSPROPERTY_AUDIOENGINE_SUPPORTEDDEVICEFORMATS: KSPROPERTY_AUDIOENGINE = 5i32; 3432 pub const KSPROPERTY_AUDIOENGINE_DESCRIPTOR: KSPROPERTY_AUDIOENGINE = 6i32; 3433 pub const KSPROPERTY_AUDIOENGINE_BUFFER_SIZE_RANGE: KSPROPERTY_AUDIOENGINE = 7i32; 3434 pub const KSPROPERTY_AUDIOENGINE_LOOPBACK_PROTECTION: KSPROPERTY_AUDIOENGINE = 8i32; 3435 pub const KSPROPERTY_AUDIOENGINE_VOLUMELEVEL: KSPROPERTY_AUDIOENGINE = 9i32; 3436 pub type KSPROPERTY_AUDIOMODULE = i32; 3437 pub const KSPROPERTY_AUDIOMODULE_DESCRIPTORS: KSPROPERTY_AUDIOMODULE = 1i32; 3438 pub const KSPROPERTY_AUDIOMODULE_COMMAND: KSPROPERTY_AUDIOMODULE = 2i32; 3439 pub const KSPROPERTY_AUDIOMODULE_NOTIFICATION_DEVICE_ID: KSPROPERTY_AUDIOMODULE = 3i32; 3440 pub type KSPROPERTY_AUDIOPOSTURE = i32; 3441 pub const KSPROPERTY_AUDIOPOSTURE_ORIENTATION: KSPROPERTY_AUDIOPOSTURE = 1i32; 3442 pub type KSPROPERTY_AUDIORESOURCEMANAGEMENT = i32; 3443 pub const KSPROPERTY_AUDIORESOURCEMANAGEMENT_RESOURCEGROUP: KSPROPERTY_AUDIORESOURCEMANAGEMENT = 0i32; 3444 pub type KSPROPERTY_AUDIOSIGNALPROCESSING = i32; 3445 pub const KSPROPERTY_AUDIOSIGNALPROCESSING_MODES: KSPROPERTY_AUDIOSIGNALPROCESSING = 0i32; 3446 pub const KSPROPERTY_AUDIO_BUFFER_DURATION: u32 = 1u32; 3447 pub type KSPROPERTY_BIBLIOGRAPHIC = i32; 3448 pub const KSPROPERTY_BIBLIOGRAPHIC_LEADER: KSPROPERTY_BIBLIOGRAPHIC = 1380207648i32; 3449 pub const KSPROPERTY_BIBLIOGRAPHIC_LCCN: KSPROPERTY_BIBLIOGRAPHIC = 808529952i32; 3450 pub const KSPROPERTY_BIBLIOGRAPHIC_ISBN: KSPROPERTY_BIBLIOGRAPHIC = 808595488i32; 3451 pub const KSPROPERTY_BIBLIOGRAPHIC_ISSN: KSPROPERTY_BIBLIOGRAPHIC = 842149920i32; 3452 pub const KSPROPERTY_BIBLIOGRAPHIC_CATALOGINGSOURCE: KSPROPERTY_BIBLIOGRAPHIC = 808726560i32; 3453 pub const KSPROPERTY_BIBLIOGRAPHIC_MAINPERSONALNAME: KSPROPERTY_BIBLIOGRAPHIC = 808464672i32; 3454 pub const KSPROPERTY_BIBLIOGRAPHIC_MAINCORPORATEBODY: KSPROPERTY_BIBLIOGRAPHIC = 808530208i32; 3455 pub const KSPROPERTY_BIBLIOGRAPHIC_MAINMEETINGNAME: KSPROPERTY_BIBLIOGRAPHIC = 825307424i32; 3456 pub const KSPROPERTY_BIBLIOGRAPHIC_MAINUNIFORMTITLE: KSPROPERTY_BIBLIOGRAPHIC = 808661280i32; 3457 pub const KSPROPERTY_BIBLIOGRAPHIC_UNIFORMTITLE: KSPROPERTY_BIBLIOGRAPHIC = 808727072i32; 3458 pub const KSPROPERTY_BIBLIOGRAPHIC_TITLESTATEMENT: KSPROPERTY_BIBLIOGRAPHIC = 892613152i32; 3459 pub const KSPROPERTY_BIBLIOGRAPHIC_VARYINGFORMTITLE: KSPROPERTY_BIBLIOGRAPHIC = 909390368i32; 3460 pub const KSPROPERTY_BIBLIOGRAPHIC_PUBLICATION: KSPROPERTY_BIBLIOGRAPHIC = 808858144i32; 3461 pub const KSPROPERTY_BIBLIOGRAPHIC_PHYSICALDESCRIPTION: KSPROPERTY_BIBLIOGRAPHIC = 808465184i32; 3462 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYTITLE: KSPROPERTY_BIBLIOGRAPHIC = 808727584i32; 3463 pub const KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENT: KSPROPERTY_BIBLIOGRAPHIC = 809055264i32; 3464 pub const KSPROPERTY_BIBLIOGRAPHIC_GENERALNOTE: KSPROPERTY_BIBLIOGRAPHIC = 808465696i32; 3465 pub const KSPROPERTY_BIBLIOGRAPHIC_BIBLIOGRAPHYNOTE: KSPROPERTY_BIBLIOGRAPHIC = 875574560i32; 3466 pub const KSPROPERTY_BIBLIOGRAPHIC_CONTENTSNOTE: KSPROPERTY_BIBLIOGRAPHIC = 892351776i32; 3467 pub const KSPROPERTY_BIBLIOGRAPHIC_CREATIONCREDIT: KSPROPERTY_BIBLIOGRAPHIC = 942683424i32; 3468 pub const KSPROPERTY_BIBLIOGRAPHIC_CITATION: KSPROPERTY_BIBLIOGRAPHIC = 808531232i32; 3469 pub const KSPROPERTY_BIBLIOGRAPHIC_PARTICIPANT: KSPROPERTY_BIBLIOGRAPHIC = 825308448i32; 3470 pub const KSPROPERTY_BIBLIOGRAPHIC_SUMMARY: KSPROPERTY_BIBLIOGRAPHIC = 808596768i32; 3471 pub const KSPROPERTY_BIBLIOGRAPHIC_TARGETAUDIENCE: KSPROPERTY_BIBLIOGRAPHIC = 825373984i32; 3472 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDFORMAVAILABLE: KSPROPERTY_BIBLIOGRAPHIC = 808662304i32; 3473 pub const KSPROPERTY_BIBLIOGRAPHIC_SYSTEMDETAILS: KSPROPERTY_BIBLIOGRAPHIC = 942880032i32; 3474 pub const KSPROPERTY_BIBLIOGRAPHIC_AWARDS: KSPROPERTY_BIBLIOGRAPHIC = 909653280i32; 3475 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYPERSONALNAME: KSPROPERTY_BIBLIOGRAPHIC = 808465952i32; 3476 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYTOPICALTERM: KSPROPERTY_BIBLIOGRAPHIC = 808793632i32; 3477 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYGEOGRAPHIC: KSPROPERTY_BIBLIOGRAPHIC = 825570848i32; 3478 pub const KSPROPERTY_BIBLIOGRAPHIC_INDEXTERMGENRE: KSPROPERTY_BIBLIOGRAPHIC = 892679712i32; 3479 pub const KSPROPERTY_BIBLIOGRAPHIC_INDEXTERMCURRICULUM: KSPROPERTY_BIBLIOGRAPHIC = 943011360i32; 3480 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYUNIFORMTITLE: KSPROPERTY_BIBLIOGRAPHIC = 808662816i32; 3481 pub const KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYRELATED: KSPROPERTY_BIBLIOGRAPHIC = 808728352i32; 3482 pub const KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENTPERSONALNAME: KSPROPERTY_BIBLIOGRAPHIC = 808466464i32; 3483 pub const KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENTUNIFORMTITLE: KSPROPERTY_BIBLIOGRAPHIC = 808663072i32; 3484 #[repr(C)] 3485 pub union KSPROPERTY_BOUNDS_LONG { 3486 pub Anonymous1: KSPROPERTY_BOUNDS_LONG_0, 3487 pub Anonymous2: KSPROPERTY_BOUNDS_LONG_1, 3488 } 3489 impl ::core::marker::Copy for KSPROPERTY_BOUNDS_LONG {} 3490 impl ::core::clone::Clone for KSPROPERTY_BOUNDS_LONG { clone(&self) -> Self3491 fn clone(&self) -> Self { 3492 *self 3493 } 3494 } 3495 #[repr(C)] 3496 pub struct KSPROPERTY_BOUNDS_LONG_0 { 3497 pub SignedMinimum: i32, 3498 pub SignedMaximum: i32, 3499 } 3500 impl ::core::marker::Copy for KSPROPERTY_BOUNDS_LONG_0 {} 3501 impl ::core::clone::Clone for KSPROPERTY_BOUNDS_LONG_0 { clone(&self) -> Self3502 fn clone(&self) -> Self { 3503 *self 3504 } 3505 } 3506 #[repr(C)] 3507 pub struct KSPROPERTY_BOUNDS_LONG_1 { 3508 pub UnsignedMinimum: u32, 3509 pub UnsignedMaximum: u32, 3510 } 3511 impl ::core::marker::Copy for KSPROPERTY_BOUNDS_LONG_1 {} 3512 impl ::core::clone::Clone for KSPROPERTY_BOUNDS_LONG_1 { clone(&self) -> Self3513 fn clone(&self) -> Self { 3514 *self 3515 } 3516 } 3517 #[repr(C)] 3518 pub union KSPROPERTY_BOUNDS_LONGLONG { 3519 pub Anonymous1: KSPROPERTY_BOUNDS_LONGLONG_0, 3520 pub Anonymous2: KSPROPERTY_BOUNDS_LONGLONG_1, 3521 } 3522 impl ::core::marker::Copy for KSPROPERTY_BOUNDS_LONGLONG {} 3523 impl ::core::clone::Clone for KSPROPERTY_BOUNDS_LONGLONG { clone(&self) -> Self3524 fn clone(&self) -> Self { 3525 *self 3526 } 3527 } 3528 #[repr(C)] 3529 pub struct KSPROPERTY_BOUNDS_LONGLONG_0 { 3530 pub SignedMinimum: i64, 3531 pub SignedMaximum: i64, 3532 } 3533 impl ::core::marker::Copy for KSPROPERTY_BOUNDS_LONGLONG_0 {} 3534 impl ::core::clone::Clone for KSPROPERTY_BOUNDS_LONGLONG_0 { clone(&self) -> Self3535 fn clone(&self) -> Self { 3536 *self 3537 } 3538 } 3539 #[repr(C)] 3540 pub struct KSPROPERTY_BOUNDS_LONGLONG_1 { 3541 pub UnsignedMinimum: u64, 3542 pub UnsignedMaximum: u64, 3543 } 3544 impl ::core::marker::Copy for KSPROPERTY_BOUNDS_LONGLONG_1 {} 3545 impl ::core::clone::Clone for KSPROPERTY_BOUNDS_LONGLONG_1 { clone(&self) -> Self3546 fn clone(&self) -> Self { 3547 *self 3548 } 3549 } 3550 pub type KSPROPERTY_BTAUDIO = i32; 3551 pub const KSPROPERTY_ONESHOT_RECONNECT: KSPROPERTY_BTAUDIO = 0i32; 3552 pub const KSPROPERTY_ONESHOT_DISCONNECT: KSPROPERTY_BTAUDIO = 1i32; 3553 pub type KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = i32; 3554 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 0i32; 3555 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOFRAMERATE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 1i32; 3556 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMAXFRAMERATE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 2i32; 3557 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOTRIGGERTIME: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 3i32; 3558 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_WARMSTART: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 4i32; 3559 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_MAXVIDFPS_PHOTORES: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 5i32; 3560 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOTHUMBNAIL: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 6i32; 3561 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_SCENEMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 7i32; 3562 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_TORCHMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 8i32; 3563 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FLASHMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 9i32; 3564 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_OPTIMIZATIONHINT: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 10i32; 3565 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_WHITEBALANCEMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 11i32; 3566 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_EXPOSUREMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 12i32; 3567 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FOCUSMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 13i32; 3568 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_ISO: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 14i32; 3569 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FIELDOFVIEW: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 15i32; 3570 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_EVCOMPENSATION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 16i32; 3571 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_CAMERAANGLEOFFSET: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 17i32; 3572 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_METADATA: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 18i32; 3573 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FOCUSPRIORITY: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 19i32; 3574 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FOCUSSTATE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 20i32; 3575 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_ROI_CONFIGCAPS: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 21i32; 3576 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_ROI_ISPCONTROL: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 22i32; 3577 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOCONFIRMATION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 23i32; 3578 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 24i32; 3579 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_MCC: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 25i32; 3580 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 26i32; 3581 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOSTABILIZATION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 27i32; 3582 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_VFR: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 28i32; 3583 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FACEDETECTION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 29i32; 3584 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOHDR: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 30i32; 3585 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_HISTOGRAM: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 31i32; 3586 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_OIS: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 32i32; 3587 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_ADVANCEDPHOTO: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 33i32; 3588 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_PROFILE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 34i32; 3589 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_FACEAUTH_MODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 35i32; 3590 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_SECURE_MODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 36i32; 3591 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOTEMPORALDENOISING: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 37i32; 3592 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_IRTORCHMODE: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 38i32; 3593 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_RELATIVEPANELOPTIMIZATION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 39i32; 3594 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 40i32; 3595 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 41i32; 3596 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_DIGITALWINDOW_CONFIGCAPS: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 42i32; 3597 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_DIGITALWINDOW: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 43i32; 3598 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_END: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 44i32; 3599 pub const KSPROPERTY_CAMERACONTROL_EXTENDED_END2: KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY = 44i32; 3600 pub const KSPROPERTY_CAMERACONTROL_FLAGS_ABSOLUTE: i32 = 0i32; 3601 pub const KSPROPERTY_CAMERACONTROL_FLAGS_ASYNCHRONOUS: i32 = 4i32; 3602 pub const KSPROPERTY_CAMERACONTROL_FLAGS_AUTO: i32 = 1i32; 3603 pub const KSPROPERTY_CAMERACONTROL_FLAGS_MANUAL: i32 = 2i32; 3604 pub const KSPROPERTY_CAMERACONTROL_FLAGS_RELATIVE: i32 = 16i32; 3605 pub type KSPROPERTY_CAMERACONTROL_FLASH = i32; 3606 pub const KSPROPERTY_CAMERACONTROL_FLASH_PROPERTY_ID: KSPROPERTY_CAMERACONTROL_FLASH = 0i32; 3607 pub const KSPROPERTY_CAMERACONTROL_FLASH_AUTO: i32 = 2i32; 3608 pub const KSPROPERTY_CAMERACONTROL_FLASH_FLAGS_AUTO: i32 = 1i32; 3609 pub const KSPROPERTY_CAMERACONTROL_FLASH_FLAGS_MANUAL: i32 = 2i32; 3610 pub const KSPROPERTY_CAMERACONTROL_FLASH_OFF: i32 = 0i32; 3611 pub const KSPROPERTY_CAMERACONTROL_FLASH_ON: i32 = 1i32; 3612 #[repr(C)] 3613 pub struct KSPROPERTY_CAMERACONTROL_FLASH_S { 3614 pub Flash: u32, 3615 pub Capabilities: u32, 3616 } 3617 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_FLASH_S {} 3618 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_FLASH_S { clone(&self) -> Self3619 fn clone(&self) -> Self { 3620 *self 3621 } 3622 } 3623 #[repr(C)] 3624 pub struct KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S { 3625 pub Property: KSIDENTIFIER, 3626 pub lOcularFocalLength: i32, 3627 pub lObjectiveFocalLengthMin: i32, 3628 pub lObjectiveFocalLengthMax: i32, 3629 } 3630 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S {} 3631 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S { clone(&self) -> Self3632 fn clone(&self) -> Self { 3633 *self 3634 } 3635 } 3636 pub type KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY = i32; 3637 pub const KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_PROPERTY_ID: KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY = 0i32; 3638 pub const KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_EXCLUSIVE_WITH_RECORD: i32 = 1i32; 3639 #[repr(C)] 3640 pub struct KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_S { 3641 pub Capabilities: u32, 3642 pub Reserved0: u32, 3643 } 3644 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_S {} 3645 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_S { clone(&self) -> Self3646 fn clone(&self) -> Self { 3647 *self 3648 } 3649 } 3650 pub const KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_SEQUENCE_EXCLUSIVE_WITH_RECORD: i32 = 2i32; 3651 #[repr(C)] 3652 pub struct KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S { 3653 pub NodeProperty: KSNODEPROPERTY, 3654 pub lOcularFocalLength: i32, 3655 pub lObjectiveFocalLengthMin: i32, 3656 pub lObjectiveFocalLengthMax: i32, 3657 } 3658 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S {} 3659 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S { clone(&self) -> Self3660 fn clone(&self) -> Self { 3661 *self 3662 } 3663 } 3664 #[repr(C)] 3665 pub struct KSPROPERTY_CAMERACONTROL_NODE_S { 3666 pub NodeProperty: KSP_NODE, 3667 pub Value: i32, 3668 pub Flags: u32, 3669 pub Capabilities: u32, 3670 } 3671 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_NODE_S {} 3672 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_NODE_S { clone(&self) -> Self3673 fn clone(&self) -> Self { 3674 *self 3675 } 3676 } 3677 #[repr(C)] 3678 pub struct KSPROPERTY_CAMERACONTROL_NODE_S2 { 3679 pub NodeProperty: KSP_NODE, 3680 pub Value1: i32, 3681 pub Flags: u32, 3682 pub Capabilities: u32, 3683 pub Value2: i32, 3684 } 3685 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_NODE_S2 {} 3686 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_NODE_S2 { clone(&self) -> Self3687 fn clone(&self) -> Self { 3688 *self 3689 } 3690 } 3691 pub type KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_PROPERTY = i32; 3692 pub const KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_CAPABILITY: KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_PROPERTY = 0i32; 3693 pub const KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_SET: KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_PROPERTY = 1i32; 3694 pub const KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_CLEAR: KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_PROPERTY = 2i32; 3695 pub type KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST = i32; 3696 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_PROPERTY_ID: KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST = 0i32; 3697 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_CONFIG_EXPOSURE: i32 = 512i32; 3698 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_CONFIG_FOCUS: i32 = 256i32; 3699 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_CONFIG_WB: i32 = 1024i32; 3700 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_CONVERGEMODE: i32 = 1073741824i32; 3701 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_FLAGS_ASYNC: i32 = -2147483648i32; 3702 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_FLAGS_AUTO: i32 = 1i32; 3703 pub const KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_FLAGS_MANUAL: i32 = 2i32; 3704 #[repr(C)] 3705 #[cfg(feature = "Win32_Foundation")] 3706 pub struct KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S { 3707 pub FocusRect: super::super::Foundation::RECT, 3708 pub AutoFocusLock: super::super::Foundation::BOOL, 3709 pub AutoExposureLock: super::super::Foundation::BOOL, 3710 pub AutoWhitebalanceLock: super::super::Foundation::BOOL, 3711 pub Anonymous: KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S_0, 3712 } 3713 #[cfg(feature = "Win32_Foundation")] 3714 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S {} 3715 #[cfg(feature = "Win32_Foundation")] 3716 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S { clone(&self) -> Self3717 fn clone(&self) -> Self { 3718 *self 3719 } 3720 } 3721 #[repr(C)] 3722 #[cfg(feature = "Win32_Foundation")] 3723 pub union KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S_0 { 3724 pub Capabilities: u32, 3725 pub Configuration: u32, 3726 } 3727 #[cfg(feature = "Win32_Foundation")] 3728 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S_0 {} 3729 #[cfg(feature = "Win32_Foundation")] 3730 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S_0 { clone(&self) -> Self3731 fn clone(&self) -> Self { 3732 *self 3733 } 3734 } 3735 #[repr(C)] 3736 pub struct KSPROPERTY_CAMERACONTROL_S { 3737 pub Property: KSIDENTIFIER, 3738 pub Value: i32, 3739 pub Flags: u32, 3740 pub Capabilities: u32, 3741 } 3742 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_S {} 3743 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_S { clone(&self) -> Self3744 fn clone(&self) -> Self { 3745 *self 3746 } 3747 } 3748 #[repr(C)] 3749 pub struct KSPROPERTY_CAMERACONTROL_S2 { 3750 pub Property: KSIDENTIFIER, 3751 pub Value1: i32, 3752 pub Flags: u32, 3753 pub Capabilities: u32, 3754 pub Value2: i32, 3755 } 3756 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_S2 {} 3757 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_S2 { clone(&self) -> Self3758 fn clone(&self) -> Self { 3759 *self 3760 } 3761 } 3762 #[repr(C)] 3763 #[cfg(feature = "Win32_Foundation")] 3764 pub struct KSPROPERTY_CAMERACONTROL_S_EX { 3765 pub Property: KSIDENTIFIER, 3766 pub Value: i32, 3767 pub Flags: u32, 3768 pub Capabilities: u32, 3769 pub FocusRect: super::super::Foundation::RECT, 3770 } 3771 #[cfg(feature = "Win32_Foundation")] 3772 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_S_EX {} 3773 #[cfg(feature = "Win32_Foundation")] 3774 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_S_EX { clone(&self) -> Self3775 fn clone(&self) -> Self { 3776 *self 3777 } 3778 } 3779 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_AUTO: i32 = 4i32; 3780 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_FLAGS_AUTO: i32 = 1i32; 3781 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_FLAGS_MANUAL: i32 = 2i32; 3782 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_HIGH: i32 = 1i32; 3783 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_LOW: i32 = 3i32; 3784 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_MEDIUM: i32 = 2i32; 3785 pub const KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_OFF: i32 = 0i32; 3786 #[repr(C)] 3787 pub struct KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_S { 3788 pub VideoStabilizationMode: u32, 3789 pub Capabilities: u32, 3790 } 3791 impl ::core::marker::Copy for KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_S {} 3792 impl ::core::clone::Clone for KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_S { clone(&self) -> Self3793 fn clone(&self) -> Self { 3794 *self 3795 } 3796 } 3797 pub type KSPROPERTY_CAMERACONTROL_VIDEO_STABILIZATION_MODE = i32; 3798 pub const KSPROPERTY_CAMERACONTROL_VIDEO_STABILIZATION_MODE_PROPERTY_ID: KSPROPERTY_CAMERACONTROL_VIDEO_STABILIZATION_MODE = 0i32; 3799 pub type KSPROPERTY_CAMERA_PHOTOTRIGGERTIME_FLAGS = i32; 3800 pub const KSPROPERTY_CAMERA_PHOTOTRIGGERTIME_CLEAR: KSPROPERTY_CAMERA_PHOTOTRIGGERTIME_FLAGS = 0i32; 3801 pub const KSPROPERTY_CAMERA_PHOTOTRIGGERTIME_SET: KSPROPERTY_CAMERA_PHOTOTRIGGERTIME_FLAGS = 1i32; 3802 pub type KSPROPERTY_CLOCK = i32; 3803 pub const KSPROPERTY_CLOCK_TIME: KSPROPERTY_CLOCK = 0i32; 3804 pub const KSPROPERTY_CLOCK_PHYSICALTIME: KSPROPERTY_CLOCK = 1i32; 3805 pub const KSPROPERTY_CLOCK_CORRELATEDTIME: KSPROPERTY_CLOCK = 2i32; 3806 pub const KSPROPERTY_CLOCK_CORRELATEDPHYSICALTIME: KSPROPERTY_CLOCK = 3i32; 3807 pub const KSPROPERTY_CLOCK_RESOLUTION: KSPROPERTY_CLOCK = 4i32; 3808 pub const KSPROPERTY_CLOCK_STATE: KSPROPERTY_CLOCK = 5i32; 3809 pub type KSPROPERTY_CONNECTION = i32; 3810 pub const KSPROPERTY_CONNECTION_STATE: KSPROPERTY_CONNECTION = 0i32; 3811 pub const KSPROPERTY_CONNECTION_PRIORITY: KSPROPERTY_CONNECTION = 1i32; 3812 pub const KSPROPERTY_CONNECTION_DATAFORMAT: KSPROPERTY_CONNECTION = 2i32; 3813 pub const KSPROPERTY_CONNECTION_ALLOCATORFRAMING: KSPROPERTY_CONNECTION = 3i32; 3814 pub const KSPROPERTY_CONNECTION_PROPOSEDATAFORMAT: KSPROPERTY_CONNECTION = 4i32; 3815 pub const KSPROPERTY_CONNECTION_ACQUIREORDERING: KSPROPERTY_CONNECTION = 5i32; 3816 pub const KSPROPERTY_CONNECTION_ALLOCATORFRAMING_EX: KSPROPERTY_CONNECTION = 6i32; 3817 pub const KSPROPERTY_CONNECTION_STARTAT: KSPROPERTY_CONNECTION = 7i32; 3818 pub type KSPROPERTY_COPYPROT = i32; 3819 pub const KSPROPERTY_DVDCOPY_CHLG_KEY: KSPROPERTY_COPYPROT = 1i32; 3820 pub const KSPROPERTY_DVDCOPY_DVD_KEY1: KSPROPERTY_COPYPROT = 2i32; 3821 pub const KSPROPERTY_DVDCOPY_DEC_KEY2: KSPROPERTY_COPYPROT = 3i32; 3822 pub const KSPROPERTY_DVDCOPY_TITLE_KEY: KSPROPERTY_COPYPROT = 4i32; 3823 pub const KSPROPERTY_COPY_MACROVISION: KSPROPERTY_COPYPROT = 5i32; 3824 pub const KSPROPERTY_DVDCOPY_REGION: KSPROPERTY_COPYPROT = 6i32; 3825 pub const KSPROPERTY_DVDCOPY_SET_COPY_STATE: KSPROPERTY_COPYPROT = 7i32; 3826 pub const KSPROPERTY_DVDCOPY_DISC_KEY: KSPROPERTY_COPYPROT = 128i32; 3827 #[repr(C)] 3828 pub struct KSPROPERTY_CROSSBAR_ACTIVE_S { 3829 pub Property: KSIDENTIFIER, 3830 pub IndexInputPin: u32, 3831 pub Active: u32, 3832 } 3833 impl ::core::marker::Copy for KSPROPERTY_CROSSBAR_ACTIVE_S {} 3834 impl ::core::clone::Clone for KSPROPERTY_CROSSBAR_ACTIVE_S { clone(&self) -> Self3835 fn clone(&self) -> Self { 3836 *self 3837 } 3838 } 3839 #[repr(C)] 3840 pub struct KSPROPERTY_CROSSBAR_CAPS_S { 3841 pub Property: KSIDENTIFIER, 3842 pub NumberOfInputs: u32, 3843 pub NumberOfOutputs: u32, 3844 } 3845 impl ::core::marker::Copy for KSPROPERTY_CROSSBAR_CAPS_S {} 3846 impl ::core::clone::Clone for KSPROPERTY_CROSSBAR_CAPS_S { clone(&self) -> Self3847 fn clone(&self) -> Self { 3848 *self 3849 } 3850 } 3851 #[repr(C)] 3852 pub struct KSPROPERTY_CROSSBAR_PININFO_S { 3853 pub Property: KSIDENTIFIER, 3854 pub Direction: KSPIN_DATAFLOW, 3855 pub Index: u32, 3856 pub PinType: u32, 3857 pub RelatedPinIndex: u32, 3858 pub Medium: KSIDENTIFIER, 3859 } 3860 impl ::core::marker::Copy for KSPROPERTY_CROSSBAR_PININFO_S {} 3861 impl ::core::clone::Clone for KSPROPERTY_CROSSBAR_PININFO_S { clone(&self) -> Self3862 fn clone(&self) -> Self { 3863 *self 3864 } 3865 } 3866 #[repr(C)] 3867 pub struct KSPROPERTY_CROSSBAR_ROUTE_S { 3868 pub Property: KSIDENTIFIER, 3869 pub IndexInputPin: u32, 3870 pub IndexOutputPin: u32, 3871 pub CanRoute: u32, 3872 } 3873 impl ::core::marker::Copy for KSPROPERTY_CROSSBAR_ROUTE_S {} 3874 impl ::core::clone::Clone for KSPROPERTY_CROSSBAR_ROUTE_S { clone(&self) -> Self3875 fn clone(&self) -> Self { 3876 *self 3877 } 3878 } 3879 pub type KSPROPERTY_CYCLIC = i32; 3880 pub const KSPROPERTY_CYCLIC_POSITION: KSPROPERTY_CYCLIC = 0i32; 3881 #[repr(C)] 3882 pub struct KSPROPERTY_DESCRIPTION { 3883 pub AccessFlags: u32, 3884 pub DescriptionSize: u32, 3885 pub PropTypeSet: KSIDENTIFIER, 3886 pub MembersListCount: u32, 3887 pub Reserved: u32, 3888 } 3889 impl ::core::marker::Copy for KSPROPERTY_DESCRIPTION {} 3890 impl ::core::clone::Clone for KSPROPERTY_DESCRIPTION { clone(&self) -> Self3891 fn clone(&self) -> Self { 3892 *self 3893 } 3894 } 3895 pub type KSPROPERTY_DIRECTSOUND3DBUFFER = i32; 3896 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_ALL: KSPROPERTY_DIRECTSOUND3DBUFFER = 0i32; 3897 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_POSITION: KSPROPERTY_DIRECTSOUND3DBUFFER = 1i32; 3898 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_VELOCITY: KSPROPERTY_DIRECTSOUND3DBUFFER = 2i32; 3899 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_CONEANGLES: KSPROPERTY_DIRECTSOUND3DBUFFER = 3i32; 3900 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_CONEORIENTATION: KSPROPERTY_DIRECTSOUND3DBUFFER = 4i32; 3901 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_CONEOUTSIDEVOLUME: KSPROPERTY_DIRECTSOUND3DBUFFER = 5i32; 3902 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_MINDISTANCE: KSPROPERTY_DIRECTSOUND3DBUFFER = 6i32; 3903 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_MAXDISTANCE: KSPROPERTY_DIRECTSOUND3DBUFFER = 7i32; 3904 pub const KSPROPERTY_DIRECTSOUND3DBUFFER_MODE: KSPROPERTY_DIRECTSOUND3DBUFFER = 8i32; 3905 pub type KSPROPERTY_DIRECTSOUND3DLISTENER = i32; 3906 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_ALL: KSPROPERTY_DIRECTSOUND3DLISTENER = 0i32; 3907 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_POSITION: KSPROPERTY_DIRECTSOUND3DLISTENER = 1i32; 3908 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_VELOCITY: KSPROPERTY_DIRECTSOUND3DLISTENER = 2i32; 3909 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_ORIENTATION: KSPROPERTY_DIRECTSOUND3DLISTENER = 3i32; 3910 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_DISTANCEFACTOR: KSPROPERTY_DIRECTSOUND3DLISTENER = 4i32; 3911 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_ROLLOFFFACTOR: KSPROPERTY_DIRECTSOUND3DLISTENER = 5i32; 3912 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_DOPPLERFACTOR: KSPROPERTY_DIRECTSOUND3DLISTENER = 6i32; 3913 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_BATCH: KSPROPERTY_DIRECTSOUND3DLISTENER = 7i32; 3914 pub const KSPROPERTY_DIRECTSOUND3DLISTENER_ALLOCATION: KSPROPERTY_DIRECTSOUND3DLISTENER = 8i32; 3915 pub type KSPROPERTY_DRMAUDIOSTREAM = i32; 3916 pub const KSPROPERTY_DRMAUDIOSTREAM_CONTENTID: KSPROPERTY_DRMAUDIOSTREAM = 0i32; 3917 #[repr(C)] 3918 pub struct KSPROPERTY_DROPPEDFRAMES_CURRENT_S { 3919 pub Property: KSIDENTIFIER, 3920 pub PictureNumber: i64, 3921 pub DropCount: i64, 3922 pub AverageFrameSize: u32, 3923 } 3924 impl ::core::marker::Copy for KSPROPERTY_DROPPEDFRAMES_CURRENT_S {} 3925 impl ::core::clone::Clone for KSPROPERTY_DROPPEDFRAMES_CURRENT_S { clone(&self) -> Self3926 fn clone(&self) -> Self { 3927 *self 3928 } 3929 } 3930 pub type KSPROPERTY_DVDSUBPIC = i32; 3931 pub const KSPROPERTY_DVDSUBPIC_PALETTE: KSPROPERTY_DVDSUBPIC = 0i32; 3932 pub const KSPROPERTY_DVDSUBPIC_HLI: KSPROPERTY_DVDSUBPIC = 1i32; 3933 pub const KSPROPERTY_DVDSUBPIC_COMPOSIT_ON: KSPROPERTY_DVDSUBPIC = 2i32; 3934 pub type KSPROPERTY_EXTDEVICE = i32; 3935 pub const KSPROPERTY_EXTDEVICE_ID: KSPROPERTY_EXTDEVICE = 0i32; 3936 pub const KSPROPERTY_EXTDEVICE_VERSION: KSPROPERTY_EXTDEVICE = 1i32; 3937 pub const KSPROPERTY_EXTDEVICE_POWER_STATE: KSPROPERTY_EXTDEVICE = 2i32; 3938 pub const KSPROPERTY_EXTDEVICE_PORT: KSPROPERTY_EXTDEVICE = 3i32; 3939 pub const KSPROPERTY_EXTDEVICE_CAPABILITIES: KSPROPERTY_EXTDEVICE = 4i32; 3940 #[repr(C)] 3941 pub struct KSPROPERTY_EXTDEVICE_S { 3942 pub Property: KSIDENTIFIER, 3943 pub u: KSPROPERTY_EXTDEVICE_S_0, 3944 } 3945 impl ::core::marker::Copy for KSPROPERTY_EXTDEVICE_S {} 3946 impl ::core::clone::Clone for KSPROPERTY_EXTDEVICE_S { clone(&self) -> Self3947 fn clone(&self) -> Self { 3948 *self 3949 } 3950 } 3951 #[repr(C)] 3952 pub union KSPROPERTY_EXTDEVICE_S_0 { 3953 pub Capabilities: DEVCAPS, 3954 pub DevPort: u32, 3955 pub PowerState: u32, 3956 pub pawchString: [u16; 260], 3957 pub NodeUniqueID: [u32; 2], 3958 } 3959 impl ::core::marker::Copy for KSPROPERTY_EXTDEVICE_S_0 {} 3960 impl ::core::clone::Clone for KSPROPERTY_EXTDEVICE_S_0 { clone(&self) -> Self3961 fn clone(&self) -> Self { 3962 *self 3963 } 3964 } 3965 pub type KSPROPERTY_EXTENSION_UNIT = i32; 3966 pub const KSPROPERTY_EXTENSION_UNIT_INFO: KSPROPERTY_EXTENSION_UNIT = 0i32; 3967 pub const KSPROPERTY_EXTENSION_UNIT_CONTROL: KSPROPERTY_EXTENSION_UNIT = 1i32; 3968 pub const KSPROPERTY_EXTENSION_UNIT_PASS_THROUGH: KSPROPERTY_EXTENSION_UNIT = 65535i32; 3969 pub type KSPROPERTY_EXTXPORT = i32; 3970 pub const KSPROPERTY_EXTXPORT_CAPABILITIES: KSPROPERTY_EXTXPORT = 0i32; 3971 pub const KSPROPERTY_EXTXPORT_INPUT_SIGNAL_MODE: KSPROPERTY_EXTXPORT = 1i32; 3972 pub const KSPROPERTY_EXTXPORT_OUTPUT_SIGNAL_MODE: KSPROPERTY_EXTXPORT = 2i32; 3973 pub const KSPROPERTY_EXTXPORT_LOAD_MEDIUM: KSPROPERTY_EXTXPORT = 3i32; 3974 pub const KSPROPERTY_EXTXPORT_MEDIUM_INFO: KSPROPERTY_EXTXPORT = 4i32; 3975 pub const KSPROPERTY_EXTXPORT_STATE: KSPROPERTY_EXTXPORT = 5i32; 3976 pub const KSPROPERTY_EXTXPORT_STATE_NOTIFY: KSPROPERTY_EXTXPORT = 6i32; 3977 pub const KSPROPERTY_EXTXPORT_TIMECODE_SEARCH: KSPROPERTY_EXTXPORT = 7i32; 3978 pub const KSPROPERTY_EXTXPORT_ATN_SEARCH: KSPROPERTY_EXTXPORT = 8i32; 3979 pub const KSPROPERTY_EXTXPORT_RTC_SEARCH: KSPROPERTY_EXTXPORT = 9i32; 3980 pub const KSPROPERTY_RAW_AVC_CMD: KSPROPERTY_EXTXPORT = 10i32; 3981 #[repr(C)] 3982 #[cfg(feature = "Win32_Foundation")] 3983 pub struct KSPROPERTY_EXTXPORT_NODE_S { 3984 pub NodeProperty: KSP_NODE, 3985 pub u: KSPROPERTY_EXTXPORT_NODE_S_0, 3986 } 3987 #[cfg(feature = "Win32_Foundation")] 3988 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_NODE_S {} 3989 #[cfg(feature = "Win32_Foundation")] 3990 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_NODE_S { clone(&self) -> Self3991 fn clone(&self) -> Self { 3992 *self 3993 } 3994 } 3995 #[repr(C)] 3996 #[cfg(feature = "Win32_Foundation")] 3997 pub union KSPROPERTY_EXTXPORT_NODE_S_0 { 3998 pub Capabilities: u32, 3999 pub SignalMode: u32, 4000 pub LoadMedium: u32, 4001 pub MediumInfo: MEDIUM_INFO, 4002 pub XPrtState: TRANSPORT_STATE, 4003 pub Timecode: KSPROPERTY_EXTXPORT_NODE_S_0_1, 4004 pub dwTimecode: u32, 4005 pub dwAbsTrackNumber: u32, 4006 pub RawAVC: KSPROPERTY_EXTXPORT_NODE_S_0_0, 4007 } 4008 #[cfg(feature = "Win32_Foundation")] 4009 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_NODE_S_0 {} 4010 #[cfg(feature = "Win32_Foundation")] 4011 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_NODE_S_0 { clone(&self) -> Self4012 fn clone(&self) -> Self { 4013 *self 4014 } 4015 } 4016 #[repr(C)] 4017 #[cfg(feature = "Win32_Foundation")] 4018 pub struct KSPROPERTY_EXTXPORT_NODE_S_0_0 { 4019 pub PayloadSize: u32, 4020 pub Payload: [u8; 512], 4021 } 4022 #[cfg(feature = "Win32_Foundation")] 4023 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_NODE_S_0_0 {} 4024 #[cfg(feature = "Win32_Foundation")] 4025 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_NODE_S_0_0 { clone(&self) -> Self4026 fn clone(&self) -> Self { 4027 *self 4028 } 4029 } 4030 #[repr(C)] 4031 #[cfg(feature = "Win32_Foundation")] 4032 pub struct KSPROPERTY_EXTXPORT_NODE_S_0_1 { 4033 pub frame: u8, 4034 pub second: u8, 4035 pub minute: u8, 4036 pub hour: u8, 4037 } 4038 #[cfg(feature = "Win32_Foundation")] 4039 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_NODE_S_0_1 {} 4040 #[cfg(feature = "Win32_Foundation")] 4041 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_NODE_S_0_1 { clone(&self) -> Self4042 fn clone(&self) -> Self { 4043 *self 4044 } 4045 } 4046 #[repr(C)] 4047 #[cfg(feature = "Win32_Foundation")] 4048 pub struct KSPROPERTY_EXTXPORT_S { 4049 pub Property: KSIDENTIFIER, 4050 pub u: KSPROPERTY_EXTXPORT_S_0, 4051 } 4052 #[cfg(feature = "Win32_Foundation")] 4053 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_S {} 4054 #[cfg(feature = "Win32_Foundation")] 4055 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_S { clone(&self) -> Self4056 fn clone(&self) -> Self { 4057 *self 4058 } 4059 } 4060 #[repr(C)] 4061 #[cfg(feature = "Win32_Foundation")] 4062 pub union KSPROPERTY_EXTXPORT_S_0 { 4063 pub Capabilities: u32, 4064 pub SignalMode: u32, 4065 pub LoadMedium: u32, 4066 pub MediumInfo: MEDIUM_INFO, 4067 pub XPrtState: TRANSPORT_STATE, 4068 pub Timecode: KSPROPERTY_EXTXPORT_S_0_1, 4069 pub dwTimecode: u32, 4070 pub dwAbsTrackNumber: u32, 4071 pub RawAVC: KSPROPERTY_EXTXPORT_S_0_0, 4072 } 4073 #[cfg(feature = "Win32_Foundation")] 4074 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_S_0 {} 4075 #[cfg(feature = "Win32_Foundation")] 4076 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_S_0 { clone(&self) -> Self4077 fn clone(&self) -> Self { 4078 *self 4079 } 4080 } 4081 #[repr(C)] 4082 #[cfg(feature = "Win32_Foundation")] 4083 pub struct KSPROPERTY_EXTXPORT_S_0_0 { 4084 pub PayloadSize: u32, 4085 pub Payload: [u8; 512], 4086 } 4087 #[cfg(feature = "Win32_Foundation")] 4088 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_S_0_0 {} 4089 #[cfg(feature = "Win32_Foundation")] 4090 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_S_0_0 { clone(&self) -> Self4091 fn clone(&self) -> Self { 4092 *self 4093 } 4094 } 4095 #[repr(C)] 4096 #[cfg(feature = "Win32_Foundation")] 4097 pub struct KSPROPERTY_EXTXPORT_S_0_1 { 4098 pub frame: u8, 4099 pub second: u8, 4100 pub minute: u8, 4101 pub hour: u8, 4102 } 4103 #[cfg(feature = "Win32_Foundation")] 4104 impl ::core::marker::Copy for KSPROPERTY_EXTXPORT_S_0_1 {} 4105 #[cfg(feature = "Win32_Foundation")] 4106 impl ::core::clone::Clone for KSPROPERTY_EXTXPORT_S_0_1 { clone(&self) -> Self4107 fn clone(&self) -> Self { 4108 *self 4109 } 4110 } 4111 pub type KSPROPERTY_FMRX_CONTROL = i32; 4112 pub const KSPROPERTY_FMRX_STATE: KSPROPERTY_FMRX_CONTROL = 0i32; 4113 pub type KSPROPERTY_FMRX_TOPOLOGY = i32; 4114 pub const KSPROPERTY_FMRX_ENDPOINTID: KSPROPERTY_FMRX_TOPOLOGY = 0i32; 4115 pub const KSPROPERTY_FMRX_VOLUME: KSPROPERTY_FMRX_TOPOLOGY = 1i32; 4116 pub const KSPROPERTY_FMRX_ANTENNAENDPOINTID: KSPROPERTY_FMRX_TOPOLOGY = 2i32; 4117 pub type KSPROPERTY_GENERAL = i32; 4118 pub const KSPROPERTY_GENERAL_COMPONENTID: KSPROPERTY_GENERAL = 0i32; 4119 pub type KSPROPERTY_HRTF3D = i32; 4120 pub const KSPROPERTY_HRTF3D_PARAMS: KSPROPERTY_HRTF3D = 0i32; 4121 pub const KSPROPERTY_HRTF3D_INITIALIZE: KSPROPERTY_HRTF3D = 1i32; 4122 pub const KSPROPERTY_HRTF3D_FILTER_FORMAT: KSPROPERTY_HRTF3D = 2i32; 4123 pub type KSPROPERTY_INTERLEAVEDAUDIO = i32; 4124 pub const KSPROPERTY_INTERLEAVEDAUDIO_FORMATINFORMATION: KSPROPERTY_INTERLEAVEDAUDIO = 1i32; 4125 pub type KSPROPERTY_ITD3D = i32; 4126 pub const KSPROPERTY_ITD3D_PARAMS: KSPROPERTY_ITD3D = 0i32; 4127 pub type KSPROPERTY_JACK = i32; 4128 pub const KSPROPERTY_JACK_DESCRIPTION: KSPROPERTY_JACK = 1i32; 4129 pub const KSPROPERTY_JACK_DESCRIPTION2: KSPROPERTY_JACK = 2i32; 4130 pub const KSPROPERTY_JACK_SINK_INFO: KSPROPERTY_JACK = 3i32; 4131 pub const KSPROPERTY_JACK_CONTAINERID: KSPROPERTY_JACK = 4i32; 4132 #[repr(C)] 4133 pub struct KSPROPERTY_MEDIAAVAILABLE { 4134 pub Earliest: i64, 4135 pub Latest: i64, 4136 } 4137 impl ::core::marker::Copy for KSPROPERTY_MEDIAAVAILABLE {} 4138 impl ::core::clone::Clone for KSPROPERTY_MEDIAAVAILABLE { clone(&self) -> Self4139 fn clone(&self) -> Self { 4140 *self 4141 } 4142 } 4143 pub type KSPROPERTY_MEDIASEEKING = i32; 4144 pub const KSPROPERTY_MEDIASEEKING_CAPABILITIES: KSPROPERTY_MEDIASEEKING = 0i32; 4145 pub const KSPROPERTY_MEDIASEEKING_FORMATS: KSPROPERTY_MEDIASEEKING = 1i32; 4146 pub const KSPROPERTY_MEDIASEEKING_TIMEFORMAT: KSPROPERTY_MEDIASEEKING = 2i32; 4147 pub const KSPROPERTY_MEDIASEEKING_POSITION: KSPROPERTY_MEDIASEEKING = 3i32; 4148 pub const KSPROPERTY_MEDIASEEKING_STOPPOSITION: KSPROPERTY_MEDIASEEKING = 4i32; 4149 pub const KSPROPERTY_MEDIASEEKING_POSITIONS: KSPROPERTY_MEDIASEEKING = 5i32; 4150 pub const KSPROPERTY_MEDIASEEKING_DURATION: KSPROPERTY_MEDIASEEKING = 6i32; 4151 pub const KSPROPERTY_MEDIASEEKING_AVAILABLE: KSPROPERTY_MEDIASEEKING = 7i32; 4152 pub const KSPROPERTY_MEDIASEEKING_PREROLL: KSPROPERTY_MEDIASEEKING = 8i32; 4153 pub const KSPROPERTY_MEDIASEEKING_CONVERTTIMEFORMAT: KSPROPERTY_MEDIASEEKING = 9i32; 4154 #[repr(C)] 4155 pub struct KSPROPERTY_MEMBERSHEADER { 4156 pub MembersFlags: u32, 4157 pub MembersSize: u32, 4158 pub MembersCount: u32, 4159 pub Flags: u32, 4160 } 4161 impl ::core::marker::Copy for KSPROPERTY_MEMBERSHEADER {} 4162 impl ::core::clone::Clone for KSPROPERTY_MEMBERSHEADER { clone(&self) -> Self4163 fn clone(&self) -> Self { 4164 *self 4165 } 4166 } 4167 pub const KSPROPERTY_MEMBER_FLAG_BASICSUPPORT_MULTICHANNEL: u32 = 2u32; 4168 pub const KSPROPERTY_MEMBER_FLAG_BASICSUPPORT_UNIFORM: u32 = 4u32; 4169 pub const KSPROPERTY_MEMBER_FLAG_DEFAULT: u32 = 1u32; 4170 pub const KSPROPERTY_MEMBER_RANGES: u32 = 1u32; 4171 pub const KSPROPERTY_MEMBER_STEPPEDRANGES: u32 = 2u32; 4172 pub const KSPROPERTY_MEMBER_VALUES: u32 = 3u32; 4173 pub const KSPROPERTY_MEMORY_TRANSPORT: i32 = 1i32; 4174 pub type KSPROPERTY_MPEG2VID = i32; 4175 pub const KSPROPERTY_MPEG2VID_MODES: KSPROPERTY_MPEG2VID = 0i32; 4176 pub const KSPROPERTY_MPEG2VID_CUR_MODE: KSPROPERTY_MPEG2VID = 1i32; 4177 pub const KSPROPERTY_MPEG2VID_4_3_RECT: KSPROPERTY_MPEG2VID = 2i32; 4178 pub const KSPROPERTY_MPEG2VID_16_9_RECT: KSPROPERTY_MPEG2VID = 3i32; 4179 pub const KSPROPERTY_MPEG2VID_16_9_PANSCAN: KSPROPERTY_MPEG2VID = 4i32; 4180 pub type KSPROPERTY_MPEG4_MEDIATYPE_ATTRIBUTES = i32; 4181 pub const KSPROPERTY_MPEG4_MEDIATYPE_SD_BOX: KSPROPERTY_MPEG4_MEDIATYPE_ATTRIBUTES = 1i32; 4182 #[repr(C)] 4183 pub struct KSPROPERTY_NETWORKCAMERACONTROL_EVENT_INFO { 4184 pub Header: KSCAMERA_METADATA_ITEMHEADER, 4185 pub EventFilter: [u16; 1], 4186 } 4187 impl ::core::marker::Copy for KSPROPERTY_NETWORKCAMERACONTROL_EVENT_INFO {} 4188 impl ::core::clone::Clone for KSPROPERTY_NETWORKCAMERACONTROL_EVENT_INFO { clone(&self) -> Self4189 fn clone(&self) -> Self { 4190 *self 4191 } 4192 } 4193 #[repr(C)] 4194 #[cfg(feature = "Win32_Foundation")] 4195 pub struct KSPROPERTY_NETWORKCAMERACONTROL_METADATA_INFO { 4196 pub MetadataItems: u32, 4197 pub Size: u32, 4198 pub PTZStatus: super::super::Foundation::BOOL, 4199 pub Events: super::super::Foundation::BOOL, 4200 pub Analytics: super::super::Foundation::BOOL, 4201 pub Reserved: super::super::Foundation::BOOL, 4202 } 4203 #[cfg(feature = "Win32_Foundation")] 4204 impl ::core::marker::Copy for KSPROPERTY_NETWORKCAMERACONTROL_METADATA_INFO {} 4205 #[cfg(feature = "Win32_Foundation")] 4206 impl ::core::clone::Clone for KSPROPERTY_NETWORKCAMERACONTROL_METADATA_INFO { clone(&self) -> Self4207 fn clone(&self) -> Self { 4208 *self 4209 } 4210 } 4211 pub type KSPROPERTY_NETWORKCAMERACONTROL_METADATA_TYPE = i32; 4212 pub const KSPROPERTY_NETWORKCAMERACONTROL_METADATA_TYPE_EVENTSINFO: KSPROPERTY_NETWORKCAMERACONTROL_METADATA_TYPE = 0i32; 4213 #[repr(C)] 4214 pub struct KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_HEADER { 4215 pub Size: u32, 4216 pub Type: KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE, 4217 } 4218 impl ::core::marker::Copy for KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_HEADER {} 4219 impl ::core::clone::Clone for KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_HEADER { clone(&self) -> Self4220 fn clone(&self) -> Self { 4221 *self 4222 } 4223 } 4224 pub type KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE = i32; 4225 pub const KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE_DISABLE: KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE = 0i32; 4226 pub const KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE_HOSTNTP: KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE = 1i32; 4227 pub const KSPROPERYT_NETWORKCAMERACONTROL_NTPINFO_TYPE_CUSTOM: KSPROPERTY_NETWORKCAMERACONTROL_NTPINFO_TYPE = 2i32; 4228 pub type KSPROPERTY_NETWORKCAMERACONTROL_PROPERTY = i32; 4229 pub const KSPROPERTY_NETWORKCAMERACONTROL_NTP: KSPROPERTY_NETWORKCAMERACONTROL_PROPERTY = 0i32; 4230 pub const KSPROPERTY_NETWORKCAMERACONTROL_URI: KSPROPERTY_NETWORKCAMERACONTROL_PROPERTY = 1i32; 4231 pub const KSPROPERTY_NETWORKCAMERACONTROL_METADATA: KSPROPERTY_NETWORKCAMERACONTROL_PROPERTY = 2i32; 4232 pub const KSPROPERTY_NETWORKCAMERACONTROL_EVENTTOPICS_XML: KSPROPERTY_NETWORKCAMERACONTROL_PROPERTY = 3i32; 4233 pub type KSPROPERTY_OVERLAYUPDATE = i32; 4234 pub const KSPROPERTY_OVERLAYUPDATE_INTERESTS: KSPROPERTY_OVERLAYUPDATE = 0i32; 4235 pub const KSPROPERTY_OVERLAYUPDATE_CLIPLIST: KSPROPERTY_OVERLAYUPDATE = 1i32; 4236 pub const KSPROPERTY_OVERLAYUPDATE_PALETTE: KSPROPERTY_OVERLAYUPDATE = 2i32; 4237 pub const KSPROPERTY_OVERLAYUPDATE_COLORKEY: KSPROPERTY_OVERLAYUPDATE = 4i32; 4238 pub const KSPROPERTY_OVERLAYUPDATE_VIDEOPOSITION: KSPROPERTY_OVERLAYUPDATE = 8i32; 4239 pub const KSPROPERTY_OVERLAYUPDATE_DISPLAYCHANGE: KSPROPERTY_OVERLAYUPDATE = 16i32; 4240 pub const KSPROPERTY_OVERLAYUPDATE_COLORREF: KSPROPERTY_OVERLAYUPDATE = 268435456i32; 4241 pub type KSPROPERTY_PIN = i32; 4242 pub const KSPROPERTY_PIN_CINSTANCES: KSPROPERTY_PIN = 0i32; 4243 pub const KSPROPERTY_PIN_CTYPES: KSPROPERTY_PIN = 1i32; 4244 pub const KSPROPERTY_PIN_DATAFLOW: KSPROPERTY_PIN = 2i32; 4245 pub const KSPROPERTY_PIN_DATARANGES: KSPROPERTY_PIN = 3i32; 4246 pub const KSPROPERTY_PIN_DATAINTERSECTION: KSPROPERTY_PIN = 4i32; 4247 pub const KSPROPERTY_PIN_INTERFACES: KSPROPERTY_PIN = 5i32; 4248 pub const KSPROPERTY_PIN_MEDIUMS: KSPROPERTY_PIN = 6i32; 4249 pub const KSPROPERTY_PIN_COMMUNICATION: KSPROPERTY_PIN = 7i32; 4250 pub const KSPROPERTY_PIN_GLOBALCINSTANCES: KSPROPERTY_PIN = 8i32; 4251 pub const KSPROPERTY_PIN_NECESSARYINSTANCES: KSPROPERTY_PIN = 9i32; 4252 pub const KSPROPERTY_PIN_PHYSICALCONNECTION: KSPROPERTY_PIN = 10i32; 4253 pub const KSPROPERTY_PIN_CATEGORY: KSPROPERTY_PIN = 11i32; 4254 pub const KSPROPERTY_PIN_NAME: KSPROPERTY_PIN = 12i32; 4255 pub const KSPROPERTY_PIN_CONSTRAINEDDATARANGES: KSPROPERTY_PIN = 13i32; 4256 pub const KSPROPERTY_PIN_PROPOSEDATAFORMAT: KSPROPERTY_PIN = 14i32; 4257 pub const KSPROPERTY_PIN_PROPOSEDATAFORMAT2: KSPROPERTY_PIN = 15i32; 4258 pub const KSPROPERTY_PIN_MODEDATAFORMATS: KSPROPERTY_PIN = 16i32; 4259 pub const KSPROPERTY_PIN_FLAGS_ATTRIBUTE_RANGE_AWARE: u32 = 1u32; 4260 pub const KSPROPERTY_PIN_FLAGS_MASK: u32 = 1u32; 4261 #[repr(C)] 4262 pub struct KSPROPERTY_POSITIONS { 4263 pub Current: i64, 4264 pub Stop: i64, 4265 pub CurrentFlags: KS_SEEKING_FLAGS, 4266 pub StopFlags: KS_SEEKING_FLAGS, 4267 } 4268 impl ::core::marker::Copy for KSPROPERTY_POSITIONS {} 4269 impl ::core::clone::Clone for KSPROPERTY_POSITIONS { clone(&self) -> Self4270 fn clone(&self) -> Self { 4271 *self 4272 } 4273 } 4274 pub type KSPROPERTY_QUALITY = i32; 4275 pub const KSPROPERTY_QUALITY_REPORT: KSPROPERTY_QUALITY = 0i32; 4276 pub const KSPROPERTY_QUALITY_ERROR: KSPROPERTY_QUALITY = 1i32; 4277 pub type KSPROPERTY_RTAUDIO = i32; 4278 pub const KSPROPERTY_RTAUDIO_GETPOSITIONFUNCTION: KSPROPERTY_RTAUDIO = 0i32; 4279 pub const KSPROPERTY_RTAUDIO_BUFFER: KSPROPERTY_RTAUDIO = 1i32; 4280 pub const KSPROPERTY_RTAUDIO_HWLATENCY: KSPROPERTY_RTAUDIO = 2i32; 4281 pub const KSPROPERTY_RTAUDIO_POSITIONREGISTER: KSPROPERTY_RTAUDIO = 3i32; 4282 pub const KSPROPERTY_RTAUDIO_CLOCKREGISTER: KSPROPERTY_RTAUDIO = 4i32; 4283 pub const KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION: KSPROPERTY_RTAUDIO = 5i32; 4284 pub const KSPROPERTY_RTAUDIO_REGISTER_NOTIFICATION_EVENT: KSPROPERTY_RTAUDIO = 6i32; 4285 pub const KSPROPERTY_RTAUDIO_UNREGISTER_NOTIFICATION_EVENT: KSPROPERTY_RTAUDIO = 7i32; 4286 pub const KSPROPERTY_RTAUDIO_QUERY_NOTIFICATION_SUPPORT: KSPROPERTY_RTAUDIO = 8i32; 4287 pub const KSPROPERTY_RTAUDIO_PACKETCOUNT: KSPROPERTY_RTAUDIO = 9i32; 4288 pub const KSPROPERTY_RTAUDIO_PRESENTATION_POSITION: KSPROPERTY_RTAUDIO = 10i32; 4289 pub const KSPROPERTY_RTAUDIO_GETREADPACKET: KSPROPERTY_RTAUDIO = 11i32; 4290 pub const KSPROPERTY_RTAUDIO_SETWRITEPACKET: KSPROPERTY_RTAUDIO = 12i32; 4291 pub const KSPROPERTY_RTAUDIO_PACKETVREGISTER: KSPROPERTY_RTAUDIO = 13i32; 4292 #[repr(C)] 4293 pub struct KSPROPERTY_SELECTOR_NODE_S { 4294 pub NodeProperty: KSP_NODE, 4295 pub Value: i32, 4296 pub Flags: u32, 4297 pub Capabilities: u32, 4298 } 4299 impl ::core::marker::Copy for KSPROPERTY_SELECTOR_NODE_S {} 4300 impl ::core::clone::Clone for KSPROPERTY_SELECTOR_NODE_S { clone(&self) -> Self4301 fn clone(&self) -> Self { 4302 *self 4303 } 4304 } 4305 #[repr(C)] 4306 pub struct KSPROPERTY_SELECTOR_S { 4307 pub Property: KSIDENTIFIER, 4308 pub Value: i32, 4309 pub Flags: u32, 4310 pub Capabilities: u32, 4311 } 4312 impl ::core::marker::Copy for KSPROPERTY_SELECTOR_S {} 4313 impl ::core::clone::Clone for KSPROPERTY_SELECTOR_S { clone(&self) -> Self4314 fn clone(&self) -> Self { 4315 *self 4316 } 4317 } 4318 #[repr(C)] 4319 pub struct KSPROPERTY_SERIAL { 4320 pub PropTypeSet: KSIDENTIFIER, 4321 pub Id: u32, 4322 pub PropertyLength: u32, 4323 } 4324 impl ::core::marker::Copy for KSPROPERTY_SERIAL {} 4325 impl ::core::clone::Clone for KSPROPERTY_SERIAL { clone(&self) -> Self4326 fn clone(&self) -> Self { 4327 *self 4328 } 4329 } 4330 #[repr(C, packed(1))] 4331 pub struct KSPROPERTY_SERIALHDR { 4332 pub PropertySet: ::windows_sys::core::GUID, 4333 pub Count: u32, 4334 } 4335 impl ::core::marker::Copy for KSPROPERTY_SERIALHDR {} 4336 impl ::core::clone::Clone for KSPROPERTY_SERIALHDR { clone(&self) -> Self4337 fn clone(&self) -> Self { 4338 *self 4339 } 4340 } 4341 pub type KSPROPERTY_SOUNDDETECTOR = i32; 4342 pub const KSPROPERTY_SOUNDDETECTOR_SUPPORTEDPATTERNS: KSPROPERTY_SOUNDDETECTOR = 1i32; 4343 pub const KSPROPERTY_SOUNDDETECTOR_PATTERNS: KSPROPERTY_SOUNDDETECTOR = 2i32; 4344 pub const KSPROPERTY_SOUNDDETECTOR_ARMED: KSPROPERTY_SOUNDDETECTOR = 3i32; 4345 pub const KSPROPERTY_SOUNDDETECTOR_MATCHRESULT: KSPROPERTY_SOUNDDETECTOR = 4i32; 4346 pub const KSPROPERTY_SOUNDDETECTOR_RESET: KSPROPERTY_SOUNDDETECTOR = 5i32; 4347 pub const KSPROPERTY_SOUNDDETECTOR_STREAMINGSUPPORT: KSPROPERTY_SOUNDDETECTOR = 6i32; 4348 #[repr(C)] 4349 pub struct KSPROPERTY_SPHLI { 4350 pub HLISS: u16, 4351 pub Reserved: u16, 4352 pub StartPTM: u32, 4353 pub EndPTM: u32, 4354 pub StartX: u16, 4355 pub StartY: u16, 4356 pub StopX: u16, 4357 pub StopY: u16, 4358 pub ColCon: KS_COLCON, 4359 } 4360 impl ::core::marker::Copy for KSPROPERTY_SPHLI {} 4361 impl ::core::clone::Clone for KSPROPERTY_SPHLI { clone(&self) -> Self4362 fn clone(&self) -> Self { 4363 *self 4364 } 4365 } 4366 #[repr(C)] 4367 pub struct KSPROPERTY_SPPAL { 4368 pub sppal: [KS_DVD_YUV; 16], 4369 } 4370 impl ::core::marker::Copy for KSPROPERTY_SPPAL {} 4371 impl ::core::clone::Clone for KSPROPERTY_SPPAL { clone(&self) -> Self4372 fn clone(&self) -> Self { 4373 *self 4374 } 4375 } 4376 #[repr(C)] 4377 pub struct KSPROPERTY_STEPPING_LONG { 4378 pub SteppingDelta: u32, 4379 pub Reserved: u32, 4380 pub Bounds: KSPROPERTY_BOUNDS_LONG, 4381 } 4382 impl ::core::marker::Copy for KSPROPERTY_STEPPING_LONG {} 4383 impl ::core::clone::Clone for KSPROPERTY_STEPPING_LONG { clone(&self) -> Self4384 fn clone(&self) -> Self { 4385 *self 4386 } 4387 } 4388 #[repr(C)] 4389 pub struct KSPROPERTY_STEPPING_LONGLONG { 4390 pub SteppingDelta: u64, 4391 pub Bounds: KSPROPERTY_BOUNDS_LONGLONG, 4392 } 4393 impl ::core::marker::Copy for KSPROPERTY_STEPPING_LONGLONG {} 4394 impl ::core::clone::Clone for KSPROPERTY_STEPPING_LONGLONG { clone(&self) -> Self4395 fn clone(&self) -> Self { 4396 *self 4397 } 4398 } 4399 pub type KSPROPERTY_STREAM = i32; 4400 pub const KSPROPERTY_STREAM_ALLOCATOR: KSPROPERTY_STREAM = 0i32; 4401 pub const KSPROPERTY_STREAM_QUALITY: KSPROPERTY_STREAM = 1i32; 4402 pub const KSPROPERTY_STREAM_DEGRADATION: KSPROPERTY_STREAM = 2i32; 4403 pub const KSPROPERTY_STREAM_MASTERCLOCK: KSPROPERTY_STREAM = 3i32; 4404 pub const KSPROPERTY_STREAM_TIMEFORMAT: KSPROPERTY_STREAM = 4i32; 4405 pub const KSPROPERTY_STREAM_PRESENTATIONTIME: KSPROPERTY_STREAM = 5i32; 4406 pub const KSPROPERTY_STREAM_PRESENTATIONEXTENT: KSPROPERTY_STREAM = 6i32; 4407 pub const KSPROPERTY_STREAM_FRAMETIME: KSPROPERTY_STREAM = 7i32; 4408 pub const KSPROPERTY_STREAM_RATECAPABILITY: KSPROPERTY_STREAM = 8i32; 4409 pub const KSPROPERTY_STREAM_RATE: KSPROPERTY_STREAM = 9i32; 4410 pub const KSPROPERTY_STREAM_PIPE_ID: KSPROPERTY_STREAM = 10i32; 4411 pub type KSPROPERTY_STREAMINTERFACE = i32; 4412 pub const KSPROPERTY_STREAMINTERFACE_HEADERSIZE: KSPROPERTY_STREAMINTERFACE = 0i32; 4413 pub type KSPROPERTY_TELEPHONY_CONTROL = i32; 4414 pub const KSPROPERTY_TELEPHONY_PROVIDERID: KSPROPERTY_TELEPHONY_CONTROL = 0i32; 4415 pub const KSPROPERTY_TELEPHONY_CALLINFO: KSPROPERTY_TELEPHONY_CONTROL = 1i32; 4416 pub const KSPROPERTY_TELEPHONY_CALLCONTROL: KSPROPERTY_TELEPHONY_CONTROL = 2i32; 4417 pub const KSPROPERTY_TELEPHONY_PROVIDERCHANGE: KSPROPERTY_TELEPHONY_CONTROL = 3i32; 4418 pub const KSPROPERTY_TELEPHONY_CALLHOLD: KSPROPERTY_TELEPHONY_CONTROL = 4i32; 4419 pub const KSPROPERTY_TELEPHONY_MUTE_TX: KSPROPERTY_TELEPHONY_CONTROL = 5i32; 4420 pub type KSPROPERTY_TELEPHONY_TOPOLOGY = i32; 4421 pub const KSPROPERTY_TELEPHONY_ENDPOINTIDPAIR: KSPROPERTY_TELEPHONY_TOPOLOGY = 0i32; 4422 pub const KSPROPERTY_TELEPHONY_VOLUME: KSPROPERTY_TELEPHONY_TOPOLOGY = 1i32; 4423 pub type KSPROPERTY_TIMECODE = i32; 4424 pub const KSPROPERTY_TIMECODE_READER: KSPROPERTY_TIMECODE = 0i32; 4425 pub const KSPROPERTY_ATN_READER: KSPROPERTY_TIMECODE = 1i32; 4426 pub const KSPROPERTY_RTC_READER: KSPROPERTY_TIMECODE = 2i32; 4427 #[repr(C)] 4428 pub struct KSPROPERTY_TIMECODE_NODE_S { 4429 pub NodeProperty: KSP_NODE, 4430 pub TimecodeSamp: super::TIMECODE_SAMPLE, 4431 } 4432 impl ::core::marker::Copy for KSPROPERTY_TIMECODE_NODE_S {} 4433 impl ::core::clone::Clone for KSPROPERTY_TIMECODE_NODE_S { clone(&self) -> Self4434 fn clone(&self) -> Self { 4435 *self 4436 } 4437 } 4438 #[repr(C)] 4439 pub struct KSPROPERTY_TIMECODE_S { 4440 pub Property: KSIDENTIFIER, 4441 pub TimecodeSamp: super::TIMECODE_SAMPLE, 4442 } 4443 impl ::core::marker::Copy for KSPROPERTY_TIMECODE_S {} 4444 impl ::core::clone::Clone for KSPROPERTY_TIMECODE_S { clone(&self) -> Self4445 fn clone(&self) -> Self { 4446 *self 4447 } 4448 } 4449 pub type KSPROPERTY_TOPOLOGY = i32; 4450 pub const KSPROPERTY_TOPOLOGY_CATEGORIES: KSPROPERTY_TOPOLOGY = 0i32; 4451 pub const KSPROPERTY_TOPOLOGY_NODES: KSPROPERTY_TOPOLOGY = 1i32; 4452 pub const KSPROPERTY_TOPOLOGY_CONNECTIONS: KSPROPERTY_TOPOLOGY = 2i32; 4453 pub const KSPROPERTY_TOPOLOGY_NAME: KSPROPERTY_TOPOLOGY = 3i32; 4454 pub type KSPROPERTY_TOPOLOGYNODE = i32; 4455 pub const KSPROPERTY_TOPOLOGYNODE_ENABLE: KSPROPERTY_TOPOLOGYNODE = 1i32; 4456 pub const KSPROPERTY_TOPOLOGYNODE_RESET: KSPROPERTY_TOPOLOGYNODE = 2i32; 4457 pub type KSPROPERTY_TUNER = i32; 4458 pub const KSPROPERTY_TUNER_CAPS: KSPROPERTY_TUNER = 0i32; 4459 pub const KSPROPERTY_TUNER_MODE_CAPS: KSPROPERTY_TUNER = 1i32; 4460 pub const KSPROPERTY_TUNER_MODE: KSPROPERTY_TUNER = 2i32; 4461 pub const KSPROPERTY_TUNER_STANDARD: KSPROPERTY_TUNER = 3i32; 4462 pub const KSPROPERTY_TUNER_FREQUENCY: KSPROPERTY_TUNER = 4i32; 4463 pub const KSPROPERTY_TUNER_INPUT: KSPROPERTY_TUNER = 5i32; 4464 pub const KSPROPERTY_TUNER_STATUS: KSPROPERTY_TUNER = 6i32; 4465 pub const KSPROPERTY_TUNER_IF_MEDIUM: KSPROPERTY_TUNER = 7i32; 4466 pub const KSPROPERTY_TUNER_SCAN_CAPS: KSPROPERTY_TUNER = 8i32; 4467 pub const KSPROPERTY_TUNER_SCAN_STATUS: KSPROPERTY_TUNER = 9i32; 4468 pub const KSPROPERTY_TUNER_STANDARD_MODE: KSPROPERTY_TUNER = 10i32; 4469 pub const KSPROPERTY_TUNER_NETWORKTYPE_SCAN_CAPS: KSPROPERTY_TUNER = 11i32; 4470 #[repr(C)] 4471 pub struct KSPROPERTY_TUNER_CAPS_S { 4472 pub Property: KSIDENTIFIER, 4473 pub ModesSupported: u32, 4474 pub VideoMedium: KSIDENTIFIER, 4475 pub TVAudioMedium: KSIDENTIFIER, 4476 pub RadioAudioMedium: KSIDENTIFIER, 4477 } 4478 impl ::core::marker::Copy for KSPROPERTY_TUNER_CAPS_S {} 4479 impl ::core::clone::Clone for KSPROPERTY_TUNER_CAPS_S { clone(&self) -> Self4480 fn clone(&self) -> Self { 4481 *self 4482 } 4483 } 4484 #[repr(C)] 4485 pub struct KSPROPERTY_TUNER_FREQUENCY_S { 4486 pub Property: KSIDENTIFIER, 4487 pub Frequency: u32, 4488 pub LastFrequency: u32, 4489 pub TuningFlags: u32, 4490 pub VideoSubChannel: u32, 4491 pub AudioSubChannel: u32, 4492 pub Channel: u32, 4493 pub Country: u32, 4494 } 4495 impl ::core::marker::Copy for KSPROPERTY_TUNER_FREQUENCY_S {} 4496 impl ::core::clone::Clone for KSPROPERTY_TUNER_FREQUENCY_S { clone(&self) -> Self4497 fn clone(&self) -> Self { 4498 *self 4499 } 4500 } 4501 #[repr(C)] 4502 pub struct KSPROPERTY_TUNER_IF_MEDIUM_S { 4503 pub Property: KSIDENTIFIER, 4504 pub IFMedium: KSIDENTIFIER, 4505 } 4506 impl ::core::marker::Copy for KSPROPERTY_TUNER_IF_MEDIUM_S {} 4507 impl ::core::clone::Clone for KSPROPERTY_TUNER_IF_MEDIUM_S { clone(&self) -> Self4508 fn clone(&self) -> Self { 4509 *self 4510 } 4511 } 4512 #[repr(C)] 4513 pub struct KSPROPERTY_TUNER_INPUT_S { 4514 pub Property: KSIDENTIFIER, 4515 pub InputIndex: u32, 4516 } 4517 impl ::core::marker::Copy for KSPROPERTY_TUNER_INPUT_S {} 4518 impl ::core::clone::Clone for KSPROPERTY_TUNER_INPUT_S { clone(&self) -> Self4519 fn clone(&self) -> Self { 4520 *self 4521 } 4522 } 4523 pub type KSPROPERTY_TUNER_MODES = i32; 4524 pub const KSPROPERTY_TUNER_MODE_TV: KSPROPERTY_TUNER_MODES = 1i32; 4525 pub const KSPROPERTY_TUNER_MODE_FM_RADIO: KSPROPERTY_TUNER_MODES = 2i32; 4526 pub const KSPROPERTY_TUNER_MODE_AM_RADIO: KSPROPERTY_TUNER_MODES = 4i32; 4527 pub const KSPROPERTY_TUNER_MODE_DSS: KSPROPERTY_TUNER_MODES = 8i32; 4528 pub const KSPROPERTY_TUNER_MODE_ATSC: KSPROPERTY_TUNER_MODES = 16i32; 4529 #[repr(C)] 4530 pub struct KSPROPERTY_TUNER_MODE_CAPS_S { 4531 pub Property: KSIDENTIFIER, 4532 pub Mode: u32, 4533 pub StandardsSupported: u32, 4534 pub MinFrequency: u32, 4535 pub MaxFrequency: u32, 4536 pub TuningGranularity: u32, 4537 pub NumberOfInputs: u32, 4538 pub SettlingTime: u32, 4539 pub Strategy: u32, 4540 } 4541 impl ::core::marker::Copy for KSPROPERTY_TUNER_MODE_CAPS_S {} 4542 impl ::core::clone::Clone for KSPROPERTY_TUNER_MODE_CAPS_S { clone(&self) -> Self4543 fn clone(&self) -> Self { 4544 *self 4545 } 4546 } 4547 #[repr(C)] 4548 pub struct KSPROPERTY_TUNER_MODE_S { 4549 pub Property: KSIDENTIFIER, 4550 pub Mode: u32, 4551 } 4552 impl ::core::marker::Copy for KSPROPERTY_TUNER_MODE_S {} 4553 impl ::core::clone::Clone for KSPROPERTY_TUNER_MODE_S { clone(&self) -> Self4554 fn clone(&self) -> Self { 4555 *self 4556 } 4557 } 4558 #[repr(C)] 4559 pub struct KSPROPERTY_TUNER_NETWORKTYPE_SCAN_CAPS_S { 4560 pub Property: KSIDENTIFIER, 4561 pub NetworkType: ::windows_sys::core::GUID, 4562 pub BufferSize: u32, 4563 pub NetworkTunerCapabilities: *mut ::core::ffi::c_void, 4564 } 4565 impl ::core::marker::Copy for KSPROPERTY_TUNER_NETWORKTYPE_SCAN_CAPS_S {} 4566 impl ::core::clone::Clone for KSPROPERTY_TUNER_NETWORKTYPE_SCAN_CAPS_S { clone(&self) -> Self4567 fn clone(&self) -> Self { 4568 *self 4569 } 4570 } 4571 #[repr(C)] 4572 #[cfg(feature = "Win32_Foundation")] 4573 pub struct KSPROPERTY_TUNER_SCAN_CAPS_S { 4574 pub Property: KSIDENTIFIER, 4575 pub fSupportsHardwareAssistedScanning: super::super::Foundation::BOOL, 4576 pub SupportedBroadcastStandards: u32, 4577 pub GUIDBucket: *mut ::core::ffi::c_void, 4578 pub lengthofBucket: u32, 4579 } 4580 #[cfg(feature = "Win32_Foundation")] 4581 impl ::core::marker::Copy for KSPROPERTY_TUNER_SCAN_CAPS_S {} 4582 #[cfg(feature = "Win32_Foundation")] 4583 impl ::core::clone::Clone for KSPROPERTY_TUNER_SCAN_CAPS_S { clone(&self) -> Self4584 fn clone(&self) -> Self { 4585 *self 4586 } 4587 } 4588 #[repr(C)] 4589 pub struct KSPROPERTY_TUNER_SCAN_STATUS_S { 4590 pub Property: KSIDENTIFIER, 4591 pub LockStatus: _TunerDecoderLockType, 4592 pub CurrentFrequency: u32, 4593 } 4594 impl ::core::marker::Copy for KSPROPERTY_TUNER_SCAN_STATUS_S {} 4595 impl ::core::clone::Clone for KSPROPERTY_TUNER_SCAN_STATUS_S { clone(&self) -> Self4596 fn clone(&self) -> Self { 4597 *self 4598 } 4599 } 4600 #[repr(C)] 4601 #[cfg(feature = "Win32_Foundation")] 4602 pub struct KSPROPERTY_TUNER_STANDARD_MODE_S { 4603 pub Property: KSIDENTIFIER, 4604 pub AutoDetect: super::super::Foundation::BOOL, 4605 } 4606 #[cfg(feature = "Win32_Foundation")] 4607 impl ::core::marker::Copy for KSPROPERTY_TUNER_STANDARD_MODE_S {} 4608 #[cfg(feature = "Win32_Foundation")] 4609 impl ::core::clone::Clone for KSPROPERTY_TUNER_STANDARD_MODE_S { clone(&self) -> Self4610 fn clone(&self) -> Self { 4611 *self 4612 } 4613 } 4614 #[repr(C)] 4615 pub struct KSPROPERTY_TUNER_STANDARD_S { 4616 pub Property: KSIDENTIFIER, 4617 pub Standard: u32, 4618 } 4619 impl ::core::marker::Copy for KSPROPERTY_TUNER_STANDARD_S {} 4620 impl ::core::clone::Clone for KSPROPERTY_TUNER_STANDARD_S { clone(&self) -> Self4621 fn clone(&self) -> Self { 4622 *self 4623 } 4624 } 4625 #[repr(C)] 4626 pub struct KSPROPERTY_TUNER_STATUS_S { 4627 pub Property: KSIDENTIFIER, 4628 pub CurrentFrequency: u32, 4629 pub PLLOffset: u32, 4630 pub SignalStrength: u32, 4631 pub Busy: u32, 4632 } 4633 impl ::core::marker::Copy for KSPROPERTY_TUNER_STATUS_S {} 4634 impl ::core::clone::Clone for KSPROPERTY_TUNER_STATUS_S { clone(&self) -> Self4635 fn clone(&self) -> Self { 4636 *self 4637 } 4638 } 4639 #[repr(C)] 4640 pub struct KSPROPERTY_TVAUDIO_CAPS_S { 4641 pub Property: KSIDENTIFIER, 4642 pub Capabilities: u32, 4643 pub InputMedium: KSIDENTIFIER, 4644 pub OutputMedium: KSIDENTIFIER, 4645 } 4646 impl ::core::marker::Copy for KSPROPERTY_TVAUDIO_CAPS_S {} 4647 impl ::core::clone::Clone for KSPROPERTY_TVAUDIO_CAPS_S { clone(&self) -> Self4648 fn clone(&self) -> Self { 4649 *self 4650 } 4651 } 4652 #[repr(C)] 4653 pub struct KSPROPERTY_TVAUDIO_S { 4654 pub Property: KSIDENTIFIER, 4655 pub Mode: u32, 4656 } 4657 impl ::core::marker::Copy for KSPROPERTY_TVAUDIO_S {} 4658 impl ::core::clone::Clone for KSPROPERTY_TVAUDIO_S { clone(&self) -> Self4659 fn clone(&self) -> Self { 4660 *self 4661 } 4662 } 4663 pub const KSPROPERTY_TYPE_BASICSUPPORT: u32 = 512u32; 4664 pub const KSPROPERTY_TYPE_COPYPAYLOAD: u32 = 2147483648u32; 4665 pub const KSPROPERTY_TYPE_DEFAULTVALUES: u32 = 65536u32; 4666 pub const KSPROPERTY_TYPE_FSFILTERSCOPE: u32 = 1073741824u32; 4667 pub const KSPROPERTY_TYPE_GET: u32 = 1u32; 4668 pub const KSPROPERTY_TYPE_GETPAYLOADSIZE: u32 = 4u32; 4669 pub const KSPROPERTY_TYPE_HIGHPRIORITY: u32 = 134217728u32; 4670 pub const KSPROPERTY_TYPE_RELATIONS: u32 = 1024u32; 4671 pub const KSPROPERTY_TYPE_SERIALIZERAW: u32 = 8192u32; 4672 pub const KSPROPERTY_TYPE_SERIALIZESET: u32 = 2048u32; 4673 pub const KSPROPERTY_TYPE_SERIALIZESIZE: u32 = 32768u32; 4674 pub const KSPROPERTY_TYPE_SET: u32 = 2u32; 4675 pub const KSPROPERTY_TYPE_SETSUPPORT: u32 = 256u32; 4676 pub const KSPROPERTY_TYPE_TOPOLOGY: u32 = 268435456u32; 4677 pub const KSPROPERTY_TYPE_UNSERIALIZERAW: u32 = 16384u32; 4678 pub const KSPROPERTY_TYPE_UNSERIALIZESET: u32 = 4096u32; 4679 pub type KSPROPERTY_VBICAP = i32; 4680 pub const KSPROPERTY_VBICAP_PROPERTIES_PROTECTION: KSPROPERTY_VBICAP = 1i32; 4681 pub type KSPROPERTY_VBICODECFILTERING = i32; 4682 pub const KSPROPERTY_VBICODECFILTERING_SCANLINES_REQUESTED_BIT_ARRAY: KSPROPERTY_VBICODECFILTERING = 1i32; 4683 pub const KSPROPERTY_VBICODECFILTERING_SCANLINES_DISCOVERED_BIT_ARRAY: KSPROPERTY_VBICODECFILTERING = 2i32; 4684 pub const KSPROPERTY_VBICODECFILTERING_SUBSTREAMS_REQUESTED_BIT_ARRAY: KSPROPERTY_VBICODECFILTERING = 3i32; 4685 pub const KSPROPERTY_VBICODECFILTERING_SUBSTREAMS_DISCOVERED_BIT_ARRAY: KSPROPERTY_VBICODECFILTERING = 4i32; 4686 pub const KSPROPERTY_VBICODECFILTERING_STATISTICS: KSPROPERTY_VBICODECFILTERING = 5i32; 4687 #[repr(C)] 4688 pub struct KSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S { 4689 pub Property: KSIDENTIFIER, 4690 pub Substreams: VBICODECFILTERING_CC_SUBSTREAMS, 4691 } 4692 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S {} 4693 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S { clone(&self) -> Self4694 fn clone(&self) -> Self { 4695 *self 4696 } 4697 } 4698 #[repr(C)] 4699 pub struct KSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S { 4700 pub Property: KSIDENTIFIER, 4701 pub Substreams: VBICODECFILTERING_NABTS_SUBSTREAMS, 4702 } 4703 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S {} 4704 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S { clone(&self) -> Self4705 fn clone(&self) -> Self { 4706 *self 4707 } 4708 } 4709 #[repr(C)] 4710 pub struct KSPROPERTY_VBICODECFILTERING_SCANLINES_S { 4711 pub Property: KSIDENTIFIER, 4712 pub Scanlines: VBICODECFILTERING_SCANLINES, 4713 } 4714 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_SCANLINES_S {} 4715 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_SCANLINES_S { clone(&self) -> Self4716 fn clone(&self) -> Self { 4717 *self 4718 } 4719 } 4720 #[repr(C)] 4721 pub struct KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S { 4722 pub Property: KSIDENTIFIER, 4723 pub Statistics: VBICODECFILTERING_STATISTICS_CC_PIN, 4724 } 4725 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S {} 4726 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S { clone(&self) -> Self4727 fn clone(&self) -> Self { 4728 *self 4729 } 4730 } 4731 #[repr(C)] 4732 pub struct KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S { 4733 pub Property: KSIDENTIFIER, 4734 pub Statistics: VBICODECFILTERING_STATISTICS_CC, 4735 } 4736 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S {} 4737 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S { clone(&self) -> Self4738 fn clone(&self) -> Self { 4739 *self 4740 } 4741 } 4742 #[repr(C)] 4743 pub struct KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S { 4744 pub Property: KSIDENTIFIER, 4745 pub Statistics: VBICODECFILTERING_STATISTICS_COMMON_PIN, 4746 } 4747 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S {} 4748 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S { clone(&self) -> Self4749 fn clone(&self) -> Self { 4750 *self 4751 } 4752 } 4753 #[repr(C)] 4754 pub struct KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S { 4755 pub Property: KSIDENTIFIER, 4756 pub Statistics: VBICODECFILTERING_STATISTICS_COMMON, 4757 } 4758 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S {} 4759 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S { clone(&self) -> Self4760 fn clone(&self) -> Self { 4761 *self 4762 } 4763 } 4764 #[repr(C)] 4765 pub struct KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S { 4766 pub Property: KSIDENTIFIER, 4767 pub Statistics: VBICODECFILTERING_STATISTICS_NABTS_PIN, 4768 } 4769 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S {} 4770 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S { clone(&self) -> Self4771 fn clone(&self) -> Self { 4772 *self 4773 } 4774 } 4775 #[repr(C)] 4776 pub struct KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S { 4777 pub Property: KSIDENTIFIER, 4778 pub Statistics: VBICODECFILTERING_STATISTICS_NABTS, 4779 } 4780 impl ::core::marker::Copy for KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S {} 4781 impl ::core::clone::Clone for KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S { clone(&self) -> Self4782 fn clone(&self) -> Self { 4783 *self 4784 } 4785 } 4786 pub type KSPROPERTY_VIDCAP_CAMERACONTROL = i32; 4787 pub const KSPROPERTY_CAMERACONTROL_PAN: KSPROPERTY_VIDCAP_CAMERACONTROL = 0i32; 4788 pub const KSPROPERTY_CAMERACONTROL_TILT: KSPROPERTY_VIDCAP_CAMERACONTROL = 1i32; 4789 pub const KSPROPERTY_CAMERACONTROL_ROLL: KSPROPERTY_VIDCAP_CAMERACONTROL = 2i32; 4790 pub const KSPROPERTY_CAMERACONTROL_ZOOM: KSPROPERTY_VIDCAP_CAMERACONTROL = 3i32; 4791 pub const KSPROPERTY_CAMERACONTROL_EXPOSURE: KSPROPERTY_VIDCAP_CAMERACONTROL = 4i32; 4792 pub const KSPROPERTY_CAMERACONTROL_IRIS: KSPROPERTY_VIDCAP_CAMERACONTROL = 5i32; 4793 pub const KSPROPERTY_CAMERACONTROL_FOCUS: KSPROPERTY_VIDCAP_CAMERACONTROL = 6i32; 4794 pub const KSPROPERTY_CAMERACONTROL_SCANMODE: KSPROPERTY_VIDCAP_CAMERACONTROL = 7i32; 4795 pub const KSPROPERTY_CAMERACONTROL_PRIVACY: KSPROPERTY_VIDCAP_CAMERACONTROL = 8i32; 4796 pub const KSPROPERTY_CAMERACONTROL_PANTILT: KSPROPERTY_VIDCAP_CAMERACONTROL = 9i32; 4797 pub const KSPROPERTY_CAMERACONTROL_PAN_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 10i32; 4798 pub const KSPROPERTY_CAMERACONTROL_TILT_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 11i32; 4799 pub const KSPROPERTY_CAMERACONTROL_ROLL_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 12i32; 4800 pub const KSPROPERTY_CAMERACONTROL_ZOOM_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 13i32; 4801 pub const KSPROPERTY_CAMERACONTROL_EXPOSURE_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 14i32; 4802 pub const KSPROPERTY_CAMERACONTROL_IRIS_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 15i32; 4803 pub const KSPROPERTY_CAMERACONTROL_FOCUS_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 16i32; 4804 pub const KSPROPERTY_CAMERACONTROL_PANTILT_RELATIVE: KSPROPERTY_VIDCAP_CAMERACONTROL = 17i32; 4805 pub const KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH: KSPROPERTY_VIDCAP_CAMERACONTROL = 18i32; 4806 pub const KSPROPERTY_CAMERACONTROL_AUTO_EXPOSURE_PRIORITY: KSPROPERTY_VIDCAP_CAMERACONTROL = 19i32; 4807 pub type KSPROPERTY_VIDCAP_CROSSBAR = i32; 4808 pub const KSPROPERTY_CROSSBAR_CAPS: KSPROPERTY_VIDCAP_CROSSBAR = 0i32; 4809 pub const KSPROPERTY_CROSSBAR_PININFO: KSPROPERTY_VIDCAP_CROSSBAR = 1i32; 4810 pub const KSPROPERTY_CROSSBAR_CAN_ROUTE: KSPROPERTY_VIDCAP_CROSSBAR = 2i32; 4811 pub const KSPROPERTY_CROSSBAR_ROUTE: KSPROPERTY_VIDCAP_CROSSBAR = 3i32; 4812 pub const KSPROPERTY_CROSSBAR_INPUT_ACTIVE: KSPROPERTY_VIDCAP_CROSSBAR = 4i32; 4813 pub type KSPROPERTY_VIDCAP_DROPPEDFRAMES = i32; 4814 pub const KSPROPERTY_DROPPEDFRAMES_CURRENT: KSPROPERTY_VIDCAP_DROPPEDFRAMES = 0i32; 4815 pub type KSPROPERTY_VIDCAP_SELECTOR = i32; 4816 pub const KSPROPERTY_SELECTOR_SOURCE_NODE_ID: KSPROPERTY_VIDCAP_SELECTOR = 0i32; 4817 pub const KSPROPERTY_SELECTOR_NUM_SOURCES: KSPROPERTY_VIDCAP_SELECTOR = 1i32; 4818 pub type KSPROPERTY_VIDCAP_TVAUDIO = i32; 4819 pub const KSPROPERTY_TVAUDIO_CAPS: KSPROPERTY_VIDCAP_TVAUDIO = 0i32; 4820 pub const KSPROPERTY_TVAUDIO_MODE: KSPROPERTY_VIDCAP_TVAUDIO = 1i32; 4821 pub const KSPROPERTY_TVAUDIO_CURRENTLY_AVAILABLE_MODES: KSPROPERTY_VIDCAP_TVAUDIO = 2i32; 4822 pub type KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = i32; 4823 pub const KSPROPERTY_VIDEOCOMPRESSION_GETINFO: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 0i32; 4824 pub const KSPROPERTY_VIDEOCOMPRESSION_KEYFRAME_RATE: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 1i32; 4825 pub const KSPROPERTY_VIDEOCOMPRESSION_PFRAMES_PER_KEYFRAME: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 2i32; 4826 pub const KSPROPERTY_VIDEOCOMPRESSION_QUALITY: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 3i32; 4827 pub const KSPROPERTY_VIDEOCOMPRESSION_OVERRIDE_KEYFRAME: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 4i32; 4828 pub const KSPROPERTY_VIDEOCOMPRESSION_OVERRIDE_FRAME_SIZE: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 5i32; 4829 pub const KSPROPERTY_VIDEOCOMPRESSION_WINDOWSIZE: KSPROPERTY_VIDCAP_VIDEOCOMPRESSION = 6i32; 4830 pub type KSPROPERTY_VIDCAP_VIDEOCONTROL = i32; 4831 pub const KSPROPERTY_VIDEOCONTROL_CAPS: KSPROPERTY_VIDCAP_VIDEOCONTROL = 0i32; 4832 pub const KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE: KSPROPERTY_VIDCAP_VIDEOCONTROL = 1i32; 4833 pub const KSPROPERTY_VIDEOCONTROL_FRAME_RATES: KSPROPERTY_VIDCAP_VIDEOCONTROL = 2i32; 4834 pub const KSPROPERTY_VIDEOCONTROL_MODE: KSPROPERTY_VIDCAP_VIDEOCONTROL = 3i32; 4835 pub type KSPROPERTY_VIDCAP_VIDEODECODER = i32; 4836 pub const KSPROPERTY_VIDEODECODER_CAPS: KSPROPERTY_VIDCAP_VIDEODECODER = 0i32; 4837 pub const KSPROPERTY_VIDEODECODER_STANDARD: KSPROPERTY_VIDCAP_VIDEODECODER = 1i32; 4838 pub const KSPROPERTY_VIDEODECODER_STATUS: KSPROPERTY_VIDCAP_VIDEODECODER = 2i32; 4839 pub const KSPROPERTY_VIDEODECODER_OUTPUT_ENABLE: KSPROPERTY_VIDCAP_VIDEODECODER = 3i32; 4840 pub const KSPROPERTY_VIDEODECODER_VCR_TIMING: KSPROPERTY_VIDCAP_VIDEODECODER = 4i32; 4841 pub const KSPROPERTY_VIDEODECODER_STATUS2: KSPROPERTY_VIDCAP_VIDEODECODER = 5i32; 4842 pub type KSPROPERTY_VIDCAP_VIDEOENCODER = i32; 4843 pub const KSPROPERTY_VIDEOENCODER_CAPS: KSPROPERTY_VIDCAP_VIDEOENCODER = 0i32; 4844 pub const KSPROPERTY_VIDEOENCODER_STANDARD: KSPROPERTY_VIDCAP_VIDEOENCODER = 1i32; 4845 pub const KSPROPERTY_VIDEOENCODER_COPYPROTECTION: KSPROPERTY_VIDCAP_VIDEOENCODER = 2i32; 4846 pub const KSPROPERTY_VIDEOENCODER_CC_ENABLE: KSPROPERTY_VIDCAP_VIDEOENCODER = 3i32; 4847 pub type KSPROPERTY_VIDCAP_VIDEOPROCAMP = i32; 4848 pub const KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 0i32; 4849 pub const KSPROPERTY_VIDEOPROCAMP_CONTRAST: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 1i32; 4850 pub const KSPROPERTY_VIDEOPROCAMP_HUE: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 2i32; 4851 pub const KSPROPERTY_VIDEOPROCAMP_SATURATION: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 3i32; 4852 pub const KSPROPERTY_VIDEOPROCAMP_SHARPNESS: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 4i32; 4853 pub const KSPROPERTY_VIDEOPROCAMP_GAMMA: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 5i32; 4854 pub const KSPROPERTY_VIDEOPROCAMP_COLORENABLE: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 6i32; 4855 pub const KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 7i32; 4856 pub const KSPROPERTY_VIDEOPROCAMP_BACKLIGHT_COMPENSATION: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 8i32; 4857 pub const KSPROPERTY_VIDEOPROCAMP_GAIN: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 9i32; 4858 pub const KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 10i32; 4859 pub const KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER_LIMIT: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 11i32; 4860 pub const KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE_COMPONENT: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 12i32; 4861 pub const KSPROPERTY_VIDEOPROCAMP_POWERLINE_FREQUENCY: KSPROPERTY_VIDCAP_VIDEOPROCAMP = 13i32; 4862 #[repr(C)] 4863 pub struct KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S { 4864 pub Property: KSIDENTIFIER, 4865 pub StreamIndex: u32, 4866 pub DefaultKeyFrameRate: i32, 4867 pub DefaultPFrameRate: i32, 4868 pub DefaultQuality: i32, 4869 pub NumberOfQualitySettings: i32, 4870 pub Capabilities: i32, 4871 } 4872 impl ::core::marker::Copy for KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S {} 4873 impl ::core::clone::Clone for KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S { clone(&self) -> Self4874 fn clone(&self) -> Self { 4875 *self 4876 } 4877 } 4878 #[repr(C)] 4879 pub struct KSPROPERTY_VIDEOCOMPRESSION_S { 4880 pub Property: KSIDENTIFIER, 4881 pub StreamIndex: u32, 4882 pub Value: i32, 4883 } 4884 impl ::core::marker::Copy for KSPROPERTY_VIDEOCOMPRESSION_S {} 4885 impl ::core::clone::Clone for KSPROPERTY_VIDEOCOMPRESSION_S { clone(&self) -> Self4886 fn clone(&self) -> Self { 4887 *self 4888 } 4889 } 4890 #[repr(C)] 4891 pub struct KSPROPERTY_VIDEOCOMPRESSION_S1 { 4892 pub Property: KSIDENTIFIER, 4893 pub StreamIndex: u32, 4894 pub Value: i32, 4895 pub Flags: u32, 4896 } 4897 impl ::core::marker::Copy for KSPROPERTY_VIDEOCOMPRESSION_S1 {} 4898 impl ::core::clone::Clone for KSPROPERTY_VIDEOCOMPRESSION_S1 { clone(&self) -> Self4899 fn clone(&self) -> Self { 4900 *self 4901 } 4902 } 4903 #[repr(C)] 4904 #[cfg(feature = "Win32_Foundation")] 4905 pub struct KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S { 4906 pub Property: KSIDENTIFIER, 4907 pub StreamIndex: u32, 4908 pub RangeIndex: u32, 4909 pub Dimensions: super::super::Foundation::SIZE, 4910 pub CurrentActualFrameRate: i64, 4911 pub CurrentMaxAvailableFrameRate: i64, 4912 } 4913 #[cfg(feature = "Win32_Foundation")] 4914 impl ::core::marker::Copy for KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S {} 4915 #[cfg(feature = "Win32_Foundation")] 4916 impl ::core::clone::Clone for KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S { clone(&self) -> Self4917 fn clone(&self) -> Self { 4918 *self 4919 } 4920 } 4921 #[repr(C)] 4922 pub struct KSPROPERTY_VIDEOCONTROL_CAPS_S { 4923 pub Property: KSIDENTIFIER, 4924 pub StreamIndex: u32, 4925 pub VideoControlCaps: u32, 4926 } 4927 impl ::core::marker::Copy for KSPROPERTY_VIDEOCONTROL_CAPS_S {} 4928 impl ::core::clone::Clone for KSPROPERTY_VIDEOCONTROL_CAPS_S { clone(&self) -> Self4929 fn clone(&self) -> Self { 4930 *self 4931 } 4932 } 4933 #[repr(C)] 4934 #[cfg(feature = "Win32_Foundation")] 4935 pub struct KSPROPERTY_VIDEOCONTROL_FRAME_RATES_S { 4936 pub Property: KSIDENTIFIER, 4937 pub StreamIndex: u32, 4938 pub RangeIndex: u32, 4939 pub Dimensions: super::super::Foundation::SIZE, 4940 } 4941 #[cfg(feature = "Win32_Foundation")] 4942 impl ::core::marker::Copy for KSPROPERTY_VIDEOCONTROL_FRAME_RATES_S {} 4943 #[cfg(feature = "Win32_Foundation")] 4944 impl ::core::clone::Clone for KSPROPERTY_VIDEOCONTROL_FRAME_RATES_S { clone(&self) -> Self4945 fn clone(&self) -> Self { 4946 *self 4947 } 4948 } 4949 #[repr(C)] 4950 pub struct KSPROPERTY_VIDEOCONTROL_MODE_S { 4951 pub Property: KSIDENTIFIER, 4952 pub StreamIndex: u32, 4953 pub Mode: i32, 4954 } 4955 impl ::core::marker::Copy for KSPROPERTY_VIDEOCONTROL_MODE_S {} 4956 impl ::core::clone::Clone for KSPROPERTY_VIDEOCONTROL_MODE_S { clone(&self) -> Self4957 fn clone(&self) -> Self { 4958 *self 4959 } 4960 } 4961 #[repr(C)] 4962 pub struct KSPROPERTY_VIDEODECODER_CAPS_S { 4963 pub Property: KSIDENTIFIER, 4964 pub StandardsSupported: u32, 4965 pub Capabilities: u32, 4966 pub SettlingTime: u32, 4967 pub HSyncPerVSync: u32, 4968 } 4969 impl ::core::marker::Copy for KSPROPERTY_VIDEODECODER_CAPS_S {} 4970 impl ::core::clone::Clone for KSPROPERTY_VIDEODECODER_CAPS_S { clone(&self) -> Self4971 fn clone(&self) -> Self { 4972 *self 4973 } 4974 } 4975 #[repr(C)] 4976 pub struct KSPROPERTY_VIDEODECODER_S { 4977 pub Property: KSIDENTIFIER, 4978 pub Value: u32, 4979 } 4980 impl ::core::marker::Copy for KSPROPERTY_VIDEODECODER_S {} 4981 impl ::core::clone::Clone for KSPROPERTY_VIDEODECODER_S { clone(&self) -> Self4982 fn clone(&self) -> Self { 4983 *self 4984 } 4985 } 4986 #[repr(C)] 4987 pub struct KSPROPERTY_VIDEODECODER_STATUS2_S { 4988 pub Property: KSIDENTIFIER, 4989 pub NumberOfLines: u32, 4990 pub SignalLocked: u32, 4991 pub ChromaLock: u32, 4992 } 4993 impl ::core::marker::Copy for KSPROPERTY_VIDEODECODER_STATUS2_S {} 4994 impl ::core::clone::Clone for KSPROPERTY_VIDEODECODER_STATUS2_S { clone(&self) -> Self4995 fn clone(&self) -> Self { 4996 *self 4997 } 4998 } 4999 #[repr(C)] 5000 pub struct KSPROPERTY_VIDEODECODER_STATUS_S { 5001 pub Property: KSIDENTIFIER, 5002 pub NumberOfLines: u32, 5003 pub SignalLocked: u32, 5004 } 5005 impl ::core::marker::Copy for KSPROPERTY_VIDEODECODER_STATUS_S {} 5006 impl ::core::clone::Clone for KSPROPERTY_VIDEODECODER_STATUS_S { clone(&self) -> Self5007 fn clone(&self) -> Self { 5008 *self 5009 } 5010 } 5011 #[repr(C)] 5012 pub struct KSPROPERTY_VIDEOENCODER_S { 5013 pub Property: KSIDENTIFIER, 5014 pub Value: i32, 5015 pub Flags: u32, 5016 pub Capabilities: u32, 5017 } 5018 impl ::core::marker::Copy for KSPROPERTY_VIDEOENCODER_S {} 5019 impl ::core::clone::Clone for KSPROPERTY_VIDEOENCODER_S { clone(&self) -> Self5020 fn clone(&self) -> Self { 5021 *self 5022 } 5023 } 5024 pub const KSPROPERTY_VIDEOPROCAMP_FLAGS_AUTO: i32 = 1i32; 5025 pub const KSPROPERTY_VIDEOPROCAMP_FLAGS_MANUAL: i32 = 2i32; 5026 #[repr(C)] 5027 pub struct KSPROPERTY_VIDEOPROCAMP_NODE_S { 5028 pub NodeProperty: KSP_NODE, 5029 pub Value: i32, 5030 pub Flags: u32, 5031 pub Capabilities: u32, 5032 } 5033 impl ::core::marker::Copy for KSPROPERTY_VIDEOPROCAMP_NODE_S {} 5034 impl ::core::clone::Clone for KSPROPERTY_VIDEOPROCAMP_NODE_S { clone(&self) -> Self5035 fn clone(&self) -> Self { 5036 *self 5037 } 5038 } 5039 #[repr(C)] 5040 pub struct KSPROPERTY_VIDEOPROCAMP_NODE_S2 { 5041 pub NodeProperty: KSP_NODE, 5042 pub Value1: i32, 5043 pub Flags: u32, 5044 pub Capabilities: u32, 5045 pub Value2: i32, 5046 } 5047 impl ::core::marker::Copy for KSPROPERTY_VIDEOPROCAMP_NODE_S2 {} 5048 impl ::core::clone::Clone for KSPROPERTY_VIDEOPROCAMP_NODE_S2 { clone(&self) -> Self5049 fn clone(&self) -> Self { 5050 *self 5051 } 5052 } 5053 #[repr(C)] 5054 pub struct KSPROPERTY_VIDEOPROCAMP_S { 5055 pub Property: KSIDENTIFIER, 5056 pub Value: i32, 5057 pub Flags: u32, 5058 pub Capabilities: u32, 5059 } 5060 impl ::core::marker::Copy for KSPROPERTY_VIDEOPROCAMP_S {} 5061 impl ::core::clone::Clone for KSPROPERTY_VIDEOPROCAMP_S { clone(&self) -> Self5062 fn clone(&self) -> Self { 5063 *self 5064 } 5065 } 5066 #[repr(C)] 5067 pub struct KSPROPERTY_VIDEOPROCAMP_S2 { 5068 pub Property: KSIDENTIFIER, 5069 pub Value1: i32, 5070 pub Flags: u32, 5071 pub Capabilities: u32, 5072 pub Value2: i32, 5073 } 5074 impl ::core::marker::Copy for KSPROPERTY_VIDEOPROCAMP_S2 {} 5075 impl ::core::clone::Clone for KSPROPERTY_VIDEOPROCAMP_S2 { clone(&self) -> Self5076 fn clone(&self) -> Self { 5077 *self 5078 } 5079 } 5080 pub type KSPROPERTY_VIDMEM_TRANSPORT = i32; 5081 pub const KSPROPERTY_DISPLAY_ADAPTER_GUID: KSPROPERTY_VIDMEM_TRANSPORT = 1i32; 5082 pub const KSPROPERTY_PREFERRED_CAPTURE_SURFACE: KSPROPERTY_VIDMEM_TRANSPORT = 2i32; 5083 pub const KSPROPERTY_CURRENT_CAPTURE_SURFACE: KSPROPERTY_VIDMEM_TRANSPORT = 3i32; 5084 pub const KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS: KSPROPERTY_VIDMEM_TRANSPORT = 4i32; 5085 pub type KSPROPERTY_VPCONFIG = i32; 5086 pub const KSPROPERTY_VPCONFIG_NUMCONNECTINFO: KSPROPERTY_VPCONFIG = 0i32; 5087 pub const KSPROPERTY_VPCONFIG_GETCONNECTINFO: KSPROPERTY_VPCONFIG = 1i32; 5088 pub const KSPROPERTY_VPCONFIG_SETCONNECTINFO: KSPROPERTY_VPCONFIG = 2i32; 5089 pub const KSPROPERTY_VPCONFIG_VPDATAINFO: KSPROPERTY_VPCONFIG = 3i32; 5090 pub const KSPROPERTY_VPCONFIG_MAXPIXELRATE: KSPROPERTY_VPCONFIG = 4i32; 5091 pub const KSPROPERTY_VPCONFIG_INFORMVPINPUT: KSPROPERTY_VPCONFIG = 5i32; 5092 pub const KSPROPERTY_VPCONFIG_NUMVIDEOFORMAT: KSPROPERTY_VPCONFIG = 6i32; 5093 pub const KSPROPERTY_VPCONFIG_GETVIDEOFORMAT: KSPROPERTY_VPCONFIG = 7i32; 5094 pub const KSPROPERTY_VPCONFIG_SETVIDEOFORMAT: KSPROPERTY_VPCONFIG = 8i32; 5095 pub const KSPROPERTY_VPCONFIG_INVERTPOLARITY: KSPROPERTY_VPCONFIG = 9i32; 5096 pub const KSPROPERTY_VPCONFIG_DECIMATIONCAPABILITY: KSPROPERTY_VPCONFIG = 10i32; 5097 pub const KSPROPERTY_VPCONFIG_SCALEFACTOR: KSPROPERTY_VPCONFIG = 11i32; 5098 pub const KSPROPERTY_VPCONFIG_DDRAWHANDLE: KSPROPERTY_VPCONFIG = 12i32; 5099 pub const KSPROPERTY_VPCONFIG_VIDEOPORTID: KSPROPERTY_VPCONFIG = 13i32; 5100 pub const KSPROPERTY_VPCONFIG_DDRAWSURFACEHANDLE: KSPROPERTY_VPCONFIG = 14i32; 5101 pub const KSPROPERTY_VPCONFIG_SURFACEPARAMS: KSPROPERTY_VPCONFIG = 15i32; 5102 pub type KSPROPERTY_WAVE = i32; 5103 pub const KSPROPERTY_WAVE_COMPATIBLE_CAPABILITIES: KSPROPERTY_WAVE = 0i32; 5104 pub const KSPROPERTY_WAVE_INPUT_CAPABILITIES: KSPROPERTY_WAVE = 1i32; 5105 pub const KSPROPERTY_WAVE_OUTPUT_CAPABILITIES: KSPROPERTY_WAVE = 2i32; 5106 pub const KSPROPERTY_WAVE_BUFFER: KSPROPERTY_WAVE = 3i32; 5107 pub const KSPROPERTY_WAVE_FREQUENCY: KSPROPERTY_WAVE = 4i32; 5108 pub const KSPROPERTY_WAVE_VOLUME: KSPROPERTY_WAVE = 5i32; 5109 pub const KSPROPERTY_WAVE_PAN: KSPROPERTY_WAVE = 6i32; 5110 pub const KSPROPERTY_WAVE_QUEUED_POSITION: u32 = 1u32; 5111 pub const KSPROPSETID_AC3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3215714080, data2: 28191, data3: 4560, data4: [188, 242, 68, 69, 83, 84, 0, 0] }; 5112 pub const KSPROPSETID_Audio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1174383264, data2: 28187, data3: 4560, data4: [188, 242, 68, 69, 83, 84, 0, 0] }; 5113 pub const KSPROPSETID_AudioBufferDuration: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1316208767, data2: 9164, data3: 18773, data4: [167, 234, 61, 165, 2, 73, 98, 144] }; 5114 pub const KSPROPSETID_AudioDecoderOut: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1822875680, data2: 17341, data3: 4560, data4: [189, 106, 0, 53, 5, 193, 3, 169] }; 5115 pub const KSPROPSETID_AudioEngine: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 976192220, data2: 34927, data3: 19370, data4: [158, 180, 8, 43, 144, 37, 197, 54] }; 5116 pub const KSPROPSETID_AudioModule: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5117 data1: 3224698288, 5118 data2: 65397, 5119 data3: 18376, 5120 data4: [170, 60, 238, 70, 113, 107, 80, 198], 5121 }; 5122 pub const KSPROPSETID_AudioPosture: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5123 data1: 2751167245, 5124 data2: 18254, 5125 data3: 20305, 5126 data4: [163, 121, 81, 40, 45, 212, 250, 143], 5127 }; 5128 pub const KSPROPSETID_AudioResourceManagement: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5129 data1: 3501393377, 5130 data2: 45772, 5131 data3: 18508, 5132 data4: [143, 35, 229, 210, 138, 217, 207, 136], 5133 }; 5134 pub const KSPROPSETID_AudioSignalProcessing: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5135 data1: 1332196648, 5136 data2: 12489, 5137 data3: 16606, 5138 data4: [178, 251, 133, 157, 221, 31, 52, 112], 5139 }; 5140 pub const KSPROPSETID_Bibliographic: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 129635598, data2: 58033, data3: 4560, data4: [172, 23, 0, 160, 201, 34, 49, 150] }; 5141 pub const KSPROPSETID_BtAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2141219904, data2: 47350, data3: 19582, data4: [133, 86, 232, 195, 58, 18, 229, 77] }; 5142 pub const KSPROPSETID_Clock: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3742540992, data2: 44055, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 5143 pub const KSPROPSETID_Connection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 492357920, data2: 44187, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 5144 pub const KSPROPSETID_CopyProt: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 243927616, data2: 27375, data3: 4560, data4: [158, 208, 0, 160, 36, 202, 25, 179] }; 5145 pub const KSPROPSETID_Cyclic: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1073655456, data2: 11246, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 5146 pub const KSPROPSETID_DirectSound3DBuffer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1132147729, data2: 53344, data3: 4560, data4: [133, 131, 0, 192, 79, 217, 186, 243] }; 5147 pub const KSPROPSETID_DirectSound3DListener: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1132147732, data2: 53344, data3: 4560, data4: [133, 131, 0, 192, 79, 217, 186, 243] }; 5148 pub const KSPROPSETID_DrmAudioStream: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 791449053, data2: 16792, data3: 20396, data4: [186, 41, 97, 187, 5, 183, 222, 6] }; 5149 pub const KSPROPSETID_DvdSubPic: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2889417824, data2: 17327, data3: 4560, data4: [189, 106, 0, 53, 5, 193, 3, 169] }; 5150 pub const KSPROPSETID_FMRXControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2491136570, data2: 59630, data3: 18310, data4: [144, 196, 132, 40, 24, 95, 5, 190] }; 5151 pub const KSPROPSETID_FMRXTopology: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 205966991, data2: 56365, data3: 16900, data4: [157, 201, 245, 137, 99, 54, 101, 99] }; 5152 pub const KSPROPSETID_General: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 342158757, data2: 27279, data3: 4561, data4: [154, 167, 0, 160, 201, 34, 49, 150] }; 5153 pub const KSPROPSETID_Hrtf3d: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3060657328, data2: 41091, data3: 4560, data4: [133, 30, 0, 192, 79, 217, 186, 243] }; 5154 pub const KSPROPSETID_InterleavedAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3924550992, data2: 54809, data3: 19466, data4: [151, 107, 112, 98, 50, 43, 48, 6] }; 5155 pub const KSPROPSETID_Itd3d: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1680470160, data2: 40921, data3: 4560, data4: [167, 91, 0, 160, 201, 3, 101, 227] }; 5156 pub const KSPROPSETID_Jack: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5157 data1: 1158281047, 5158 data2: 11590, 5159 data3: 17975, 5160 data4: [142, 98, 206, 125, 185, 68, 245, 123], 5161 }; 5162 pub const KSPROPSETID_MPEG4_MediaType_Attributes: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4285287418, data2: 1961, data3: 19579, data4: [162, 55, 103, 47, 157, 104, 6, 95] }; 5163 pub const KSPROPSETID_MediaSeeking: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4002434828, data2: 53403, data3: 4560, data4: [171, 233, 0, 160, 201, 34, 49, 150] }; 5164 pub const KSPROPSETID_MemoryTransport: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 171777117, data2: 21059, data3: 18457, data4: [158, 208, 174, 232, 4, 76, 238, 43] }; 5165 pub const KSPROPSETID_Mpeg2Vid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3370195808, data2: 3273, data3: 4560, data4: [189, 105, 0, 53, 5, 193, 3, 169] }; 5166 pub const KSPROPSETID_OverlayUpdate: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1225696719, data2: 30337, data3: 4561, data4: [162, 28, 0, 160, 201, 34, 49, 150] }; 5167 pub const KSPROPSETID_Pin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2350074208, data2: 20909, data3: 4559, data4: [135, 138, 148, 248, 1, 193, 0, 0] }; 5168 pub const KSPROPSETID_PinMDLCacheClearProp: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3178334843, data2: 38908, data3: 16583, data4: [136, 206, 211, 255, 6, 245, 91, 22] }; 5169 pub const KSPROPSETID_Quality: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3513439104, data2: 44058, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 5170 pub const KSPROPSETID_RtAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5171 data1: 2824184972, 5172 data2: 12152, 5173 data3: 18217, 5174 data4: [144, 81, 25, 104, 116, 107, 158, 239], 5175 }; 5176 pub const KSPROPSETID_SoundDetector: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5177 data1: 289161822, 5178 data2: 64791, 5179 data3: 16471, 5180 data4: [180, 34, 237, 64, 116, 241, 175, 223], 5181 }; 5182 pub const KSPROPSETID_SoundDetector2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5183 data1: 4261929762, 5184 data2: 17676, 5185 data3: 19413, 5186 data4: [132, 202, 169, 72, 80, 14, 166, 170], 5187 }; 5188 pub const KSPROPSETID_Stream: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1705687648, data2: 39086, data3: 4559, data4: [161, 13, 0, 32, 175, 209, 86, 228] }; 5189 pub const KSPROPSETID_StreamAllocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3480109890, data2: 60551, data3: 4559, data4: [161, 48, 0, 32, 175, 209, 86, 228] }; 5190 pub const KSPROPSETID_StreamInterface: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 534613729, data2: 40147, data3: 4560, data4: [130, 170, 0, 0, 248, 34, 254, 138] }; 5191 pub const KSPROPSETID_TSRateChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2768487872, data2: 7453, data3: 4561, data4: [173, 128, 68, 69, 83, 84, 0, 0] }; 5192 pub const KSPROPSETID_TelephonyControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5193 data1: 3068100273, 5194 data2: 53401, 5195 data3: 18591, 5196 data4: [166, 160, 192, 16, 111, 8, 135, 167], 5197 }; 5198 pub const KSPROPSETID_TelephonyTopology: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5199 data1: 2884787326, 5200 data2: 3684, 5201 data3: 20018, 5202 data4: [177, 144, 208, 246, 215, 197, 62, 151], 5203 }; 5204 pub const KSPROPSETID_Topology: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1913473728, data2: 30003, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 5205 pub const KSPROPSETID_TopologyNode: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1174383265, data2: 28187, data3: 4560, data4: [188, 242, 68, 69, 83, 84, 0, 0] }; 5206 pub const KSPROPSETID_VBICAP_PROPERTIES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4049782279, data2: 31541, data3: 18799, data4: [173, 127, 45, 202, 59, 70, 183, 24] }; 5207 pub const KSPROPSETID_VBICodecFiltering: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3405689034, data2: 34581, data3: 4560, data4: [189, 106, 0, 53, 192, 237, 186, 190] }; 5208 pub const KSPROPSETID_VPConfig: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3156846176, data2: 12515, data3: 4560, data4: [158, 105, 0, 192, 79, 215, 193, 91] }; 5209 pub const KSPROPSETID_VPVBIConfig: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3964836608, data2: 6687, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; 5210 pub const KSPROPSETID_VramCapture: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 5211 data1: 3879709923, 5212 data2: 10368, 5213 data3: 18690, 5214 data4: [183, 153, 136, 208, 205, 99, 78, 15], 5215 }; 5216 pub const KSPROPSETID_Wave: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2454607024, data2: 25359, data3: 4559, data4: [173, 167, 8, 0, 62, 48, 73, 74] }; 5217 pub const KSPROPTYPESETID_General: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2548669344, data2: 48618, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; 5218 #[repr(C)] 5219 pub struct KSP_NODE { 5220 pub Property: KSIDENTIFIER, 5221 pub NodeId: u32, 5222 pub Reserved: u32, 5223 } 5224 impl ::core::marker::Copy for KSP_NODE {} 5225 impl ::core::clone::Clone for KSP_NODE { clone(&self) -> Self5226 fn clone(&self) -> Self { 5227 *self 5228 } 5229 } 5230 #[repr(C)] 5231 pub struct KSP_PIN { 5232 pub Property: KSIDENTIFIER, 5233 pub PinId: u32, 5234 pub Anonymous: KSP_PIN_0, 5235 } 5236 impl ::core::marker::Copy for KSP_PIN {} 5237 impl ::core::clone::Clone for KSP_PIN { clone(&self) -> Self5238 fn clone(&self) -> Self { 5239 *self 5240 } 5241 } 5242 #[repr(C)] 5243 pub union KSP_PIN_0 { 5244 pub Reserved: u32, 5245 pub Flags: u32, 5246 } 5247 impl ::core::marker::Copy for KSP_PIN_0 {} 5248 impl ::core::clone::Clone for KSP_PIN_0 { clone(&self) -> Self5249 fn clone(&self) -> Self { 5250 *self 5251 } 5252 } 5253 #[repr(C)] 5254 pub struct KSP_TIMEFORMAT { 5255 pub Property: KSIDENTIFIER, 5256 pub SourceFormat: ::windows_sys::core::GUID, 5257 pub TargetFormat: ::windows_sys::core::GUID, 5258 pub Time: i64, 5259 } 5260 impl ::core::marker::Copy for KSP_TIMEFORMAT {} 5261 impl ::core::clone::Clone for KSP_TIMEFORMAT { clone(&self) -> Self5262 fn clone(&self) -> Self { 5263 *self 5264 } 5265 } 5266 #[repr(C)] 5267 pub struct KSQUALITY { 5268 pub Context: *mut ::core::ffi::c_void, 5269 pub Proportion: u32, 5270 pub DeltaTime: i64, 5271 } 5272 impl ::core::marker::Copy for KSQUALITY {} 5273 impl ::core::clone::Clone for KSQUALITY { clone(&self) -> Self5274 fn clone(&self) -> Self { 5275 *self 5276 } 5277 } 5278 #[repr(C)] 5279 #[cfg(feature = "Win32_Foundation")] 5280 pub struct KSQUALITY_MANAGER { 5281 pub QualityManager: super::super::Foundation::HANDLE, 5282 pub Context: *mut ::core::ffi::c_void, 5283 } 5284 #[cfg(feature = "Win32_Foundation")] 5285 impl ::core::marker::Copy for KSQUALITY_MANAGER {} 5286 #[cfg(feature = "Win32_Foundation")] 5287 impl ::core::clone::Clone for KSQUALITY_MANAGER { clone(&self) -> Self5288 fn clone(&self) -> Self { 5289 *self 5290 } 5291 } 5292 #[repr(C)] 5293 #[cfg(feature = "Win32_Foundation")] 5294 pub struct KSQUERYBUFFER { 5295 pub Event: KSIDENTIFIER, 5296 pub EventData: *mut KSEVENTDATA, 5297 pub Reserved: *mut ::core::ffi::c_void, 5298 } 5299 #[cfg(feature = "Win32_Foundation")] 5300 impl ::core::marker::Copy for KSQUERYBUFFER {} 5301 #[cfg(feature = "Win32_Foundation")] 5302 impl ::core::clone::Clone for KSQUERYBUFFER { clone(&self) -> Self5303 fn clone(&self) -> Self { 5304 *self 5305 } 5306 } 5307 #[repr(C)] 5308 pub struct KSRATE { 5309 pub PresentationStart: i64, 5310 pub Duration: i64, 5311 pub Interface: KSIDENTIFIER, 5312 pub Rate: i32, 5313 pub Flags: u32, 5314 } 5315 impl ::core::marker::Copy for KSRATE {} 5316 impl ::core::clone::Clone for KSRATE { clone(&self) -> Self5317 fn clone(&self) -> Self { 5318 *self 5319 } 5320 } 5321 #[repr(C)] 5322 pub struct KSRATE_CAPABILITY { 5323 pub Property: KSIDENTIFIER, 5324 pub Rate: KSRATE, 5325 } 5326 impl ::core::marker::Copy for KSRATE_CAPABILITY {} 5327 impl ::core::clone::Clone for KSRATE_CAPABILITY { clone(&self) -> Self5328 fn clone(&self) -> Self { 5329 *self 5330 } 5331 } 5332 pub const KSRATE_NOPRESENTATIONDURATION: u32 = 2u32; 5333 pub const KSRATE_NOPRESENTATIONSTART: u32 = 1u32; 5334 #[repr(C)] 5335 #[cfg(feature = "Win32_Foundation")] 5336 pub struct KSRELATIVEEVENT { 5337 pub Size: u32, 5338 pub Flags: u32, 5339 pub Anonymous: KSRELATIVEEVENT_0, 5340 pub Reserved: *mut ::core::ffi::c_void, 5341 pub Event: KSIDENTIFIER, 5342 pub EventData: KSEVENTDATA, 5343 } 5344 #[cfg(feature = "Win32_Foundation")] 5345 impl ::core::marker::Copy for KSRELATIVEEVENT {} 5346 #[cfg(feature = "Win32_Foundation")] 5347 impl ::core::clone::Clone for KSRELATIVEEVENT { clone(&self) -> Self5348 fn clone(&self) -> Self { 5349 *self 5350 } 5351 } 5352 #[repr(C)] 5353 #[cfg(feature = "Win32_Foundation")] 5354 pub union KSRELATIVEEVENT_0 { 5355 pub ObjectHandle: super::super::Foundation::HANDLE, 5356 pub ObjectPointer: *mut ::core::ffi::c_void, 5357 } 5358 #[cfg(feature = "Win32_Foundation")] 5359 impl ::core::marker::Copy for KSRELATIVEEVENT_0 {} 5360 #[cfg(feature = "Win32_Foundation")] 5361 impl ::core::clone::Clone for KSRELATIVEEVENT_0 { clone(&self) -> Self5362 fn clone(&self) -> Self { 5363 *self 5364 } 5365 } 5366 pub const KSRELATIVEEVENT_FLAG_HANDLE: u32 = 1u32; 5367 pub const KSRELATIVEEVENT_FLAG_POINTER: u32 = 2u32; 5368 pub type KSRESET = i32; 5369 pub const KSRESET_BEGIN: KSRESET = 0i32; 5370 pub const KSRESET_END: KSRESET = 1i32; 5371 #[repr(C)] 5372 pub struct KSRESOLUTION { 5373 pub Granularity: i64, 5374 pub Error: i64, 5375 } 5376 impl ::core::marker::Copy for KSRESOLUTION {} 5377 impl ::core::clone::Clone for KSRESOLUTION { clone(&self) -> Self5378 fn clone(&self) -> Self { 5379 *self 5380 } 5381 } 5382 #[repr(C)] 5383 #[cfg(feature = "Win32_Foundation")] 5384 pub struct KSRTAUDIO_BUFFER { 5385 pub BufferAddress: *mut ::core::ffi::c_void, 5386 pub ActualBufferSize: u32, 5387 pub CallMemoryBarrier: super::super::Foundation::BOOL, 5388 } 5389 #[cfg(feature = "Win32_Foundation")] 5390 impl ::core::marker::Copy for KSRTAUDIO_BUFFER {} 5391 #[cfg(feature = "Win32_Foundation")] 5392 impl ::core::clone::Clone for KSRTAUDIO_BUFFER { clone(&self) -> Self5393 fn clone(&self) -> Self { 5394 *self 5395 } 5396 } 5397 #[repr(C)] 5398 #[cfg(feature = "Win32_Foundation")] 5399 pub struct KSRTAUDIO_BUFFER32 { 5400 pub BufferAddress: u32, 5401 pub ActualBufferSize: u32, 5402 pub CallMemoryBarrier: super::super::Foundation::BOOL, 5403 } 5404 #[cfg(feature = "Win32_Foundation")] 5405 impl ::core::marker::Copy for KSRTAUDIO_BUFFER32 {} 5406 #[cfg(feature = "Win32_Foundation")] 5407 impl ::core::clone::Clone for KSRTAUDIO_BUFFER32 { clone(&self) -> Self5408 fn clone(&self) -> Self { 5409 *self 5410 } 5411 } 5412 #[repr(C)] 5413 pub struct KSRTAUDIO_BUFFER_PROPERTY { 5414 pub Property: KSIDENTIFIER, 5415 pub BaseAddress: *mut ::core::ffi::c_void, 5416 pub RequestedBufferSize: u32, 5417 } 5418 impl ::core::marker::Copy for KSRTAUDIO_BUFFER_PROPERTY {} 5419 impl ::core::clone::Clone for KSRTAUDIO_BUFFER_PROPERTY { clone(&self) -> Self5420 fn clone(&self) -> Self { 5421 *self 5422 } 5423 } 5424 #[repr(C)] 5425 pub struct KSRTAUDIO_BUFFER_PROPERTY32 { 5426 pub Property: KSIDENTIFIER, 5427 pub BaseAddress: u32, 5428 pub RequestedBufferSize: u32, 5429 } 5430 impl ::core::marker::Copy for KSRTAUDIO_BUFFER_PROPERTY32 {} 5431 impl ::core::clone::Clone for KSRTAUDIO_BUFFER_PROPERTY32 { clone(&self) -> Self5432 fn clone(&self) -> Self { 5433 *self 5434 } 5435 } 5436 #[repr(C)] 5437 pub struct KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION { 5438 pub Property: KSIDENTIFIER, 5439 pub BaseAddress: *mut ::core::ffi::c_void, 5440 pub RequestedBufferSize: u32, 5441 pub NotificationCount: u32, 5442 } 5443 impl ::core::marker::Copy for KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION {} 5444 impl ::core::clone::Clone for KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION { clone(&self) -> Self5445 fn clone(&self) -> Self { 5446 *self 5447 } 5448 } 5449 #[repr(C)] 5450 pub struct KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION32 { 5451 pub Property: KSIDENTIFIER, 5452 pub BaseAddress: u32, 5453 pub RequestedBufferSize: u32, 5454 pub NotificationCount: u32, 5455 } 5456 impl ::core::marker::Copy for KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION32 {} 5457 impl ::core::clone::Clone for KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION32 { clone(&self) -> Self5458 fn clone(&self) -> Self { 5459 *self 5460 } 5461 } 5462 #[repr(C)] 5463 #[cfg(feature = "Win32_Foundation")] 5464 pub struct KSRTAUDIO_GETREADPACKET_INFO { 5465 pub PacketNumber: u32, 5466 pub Flags: u32, 5467 pub PerformanceCounterValue: u64, 5468 pub MoreData: super::super::Foundation::BOOL, 5469 } 5470 #[cfg(feature = "Win32_Foundation")] 5471 impl ::core::marker::Copy for KSRTAUDIO_GETREADPACKET_INFO {} 5472 #[cfg(feature = "Win32_Foundation")] 5473 impl ::core::clone::Clone for KSRTAUDIO_GETREADPACKET_INFO { clone(&self) -> Self5474 fn clone(&self) -> Self { 5475 *self 5476 } 5477 } 5478 #[repr(C)] 5479 pub struct KSRTAUDIO_HWLATENCY { 5480 pub FifoSize: u32, 5481 pub ChipsetDelay: u32, 5482 pub CodecDelay: u32, 5483 } 5484 impl ::core::marker::Copy for KSRTAUDIO_HWLATENCY {} 5485 impl ::core::clone::Clone for KSRTAUDIO_HWLATENCY { clone(&self) -> Self5486 fn clone(&self) -> Self { 5487 *self 5488 } 5489 } 5490 #[repr(C)] 5491 pub struct KSRTAUDIO_HWREGISTER { 5492 pub Register: *mut ::core::ffi::c_void, 5493 pub Width: u32, 5494 pub Numerator: u64, 5495 pub Denominator: u64, 5496 pub Accuracy: u32, 5497 } 5498 impl ::core::marker::Copy for KSRTAUDIO_HWREGISTER {} 5499 impl ::core::clone::Clone for KSRTAUDIO_HWREGISTER { clone(&self) -> Self5500 fn clone(&self) -> Self { 5501 *self 5502 } 5503 } 5504 #[repr(C)] 5505 pub struct KSRTAUDIO_HWREGISTER32 { 5506 pub Register: u32, 5507 pub Width: u32, 5508 pub Numerator: u64, 5509 pub Denominator: u64, 5510 pub Accuracy: u32, 5511 } 5512 impl ::core::marker::Copy for KSRTAUDIO_HWREGISTER32 {} 5513 impl ::core::clone::Clone for KSRTAUDIO_HWREGISTER32 { clone(&self) -> Self5514 fn clone(&self) -> Self { 5515 *self 5516 } 5517 } 5518 #[repr(C)] 5519 pub struct KSRTAUDIO_HWREGISTER_PROPERTY { 5520 pub Property: KSIDENTIFIER, 5521 pub BaseAddress: *mut ::core::ffi::c_void, 5522 } 5523 impl ::core::marker::Copy for KSRTAUDIO_HWREGISTER_PROPERTY {} 5524 impl ::core::clone::Clone for KSRTAUDIO_HWREGISTER_PROPERTY { clone(&self) -> Self5525 fn clone(&self) -> Self { 5526 *self 5527 } 5528 } 5529 #[repr(C)] 5530 pub struct KSRTAUDIO_HWREGISTER_PROPERTY32 { 5531 pub Property: KSIDENTIFIER, 5532 pub BaseAddress: u32, 5533 } 5534 impl ::core::marker::Copy for KSRTAUDIO_HWREGISTER_PROPERTY32 {} 5535 impl ::core::clone::Clone for KSRTAUDIO_HWREGISTER_PROPERTY32 { clone(&self) -> Self5536 fn clone(&self) -> Self { 5537 *self 5538 } 5539 } 5540 #[repr(C)] 5541 #[cfg(feature = "Win32_Foundation")] 5542 pub struct KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY { 5543 pub Property: KSIDENTIFIER, 5544 pub NotificationEvent: super::super::Foundation::HANDLE, 5545 } 5546 #[cfg(feature = "Win32_Foundation")] 5547 impl ::core::marker::Copy for KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY {} 5548 #[cfg(feature = "Win32_Foundation")] 5549 impl ::core::clone::Clone for KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY { clone(&self) -> Self5550 fn clone(&self) -> Self { 5551 *self 5552 } 5553 } 5554 #[repr(C)] 5555 pub struct KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY32 { 5556 pub Property: KSIDENTIFIER, 5557 pub NotificationEvent: u32, 5558 } 5559 impl ::core::marker::Copy for KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY32 {} 5560 impl ::core::clone::Clone for KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY32 { clone(&self) -> Self5561 fn clone(&self) -> Self { 5562 *self 5563 } 5564 } 5565 #[repr(C)] 5566 pub struct KSRTAUDIO_PACKETVREGISTER { 5567 pub CompletedPacketCount: *mut u64, 5568 pub CompletedPacketQPC: *mut u64, 5569 pub CompletedPacketHash: *mut u64, 5570 } 5571 impl ::core::marker::Copy for KSRTAUDIO_PACKETVREGISTER {} 5572 impl ::core::clone::Clone for KSRTAUDIO_PACKETVREGISTER { clone(&self) -> Self5573 fn clone(&self) -> Self { 5574 *self 5575 } 5576 } 5577 #[repr(C)] 5578 pub struct KSRTAUDIO_PACKETVREGISTER_PROPERTY { 5579 pub Property: KSIDENTIFIER, 5580 pub BaseAddress: *mut ::core::ffi::c_void, 5581 } 5582 impl ::core::marker::Copy for KSRTAUDIO_PACKETVREGISTER_PROPERTY {} 5583 impl ::core::clone::Clone for KSRTAUDIO_PACKETVREGISTER_PROPERTY { clone(&self) -> Self5584 fn clone(&self) -> Self { 5585 *self 5586 } 5587 } 5588 #[repr(C)] 5589 pub struct KSRTAUDIO_SETWRITEPACKET_INFO { 5590 pub PacketNumber: u32, 5591 pub Flags: u32, 5592 pub EosPacketLength: u32, 5593 } 5594 impl ::core::marker::Copy for KSRTAUDIO_SETWRITEPACKET_INFO {} 5595 impl ::core::clone::Clone for KSRTAUDIO_SETWRITEPACKET_INFO { clone(&self) -> Self5596 fn clone(&self) -> Self { 5597 *self 5598 } 5599 } 5600 #[repr(C)] 5601 pub struct KSSOUNDDETECTORPROPERTY { 5602 pub Property: KSIDENTIFIER, 5603 pub EventId: ::windows_sys::core::GUID, 5604 } 5605 impl ::core::marker::Copy for KSSOUNDDETECTORPROPERTY {} 5606 impl ::core::clone::Clone for KSSOUNDDETECTORPROPERTY { clone(&self) -> Self5607 fn clone(&self) -> Self { 5608 *self 5609 } 5610 } 5611 pub type KSSTATE = i32; 5612 pub const KSSTATE_STOP: KSSTATE = 0i32; 5613 pub const KSSTATE_ACQUIRE: KSSTATE = 1i32; 5614 pub const KSSTATE_PAUSE: KSSTATE = 2i32; 5615 pub const KSSTATE_RUN: KSSTATE = 3i32; 5616 #[repr(C)] 5617 pub struct KSSTREAMALLOCATOR_STATUS { 5618 pub Framing: KSALLOCATOR_FRAMING, 5619 pub AllocatedFrames: u32, 5620 pub Reserved: u32, 5621 } 5622 impl ::core::marker::Copy for KSSTREAMALLOCATOR_STATUS {} 5623 impl ::core::clone::Clone for KSSTREAMALLOCATOR_STATUS { clone(&self) -> Self5624 fn clone(&self) -> Self { 5625 *self 5626 } 5627 } 5628 #[repr(C)] 5629 pub struct KSSTREAMALLOCATOR_STATUS_EX { 5630 pub Framing: KSALLOCATOR_FRAMING_EX, 5631 pub AllocatedFrames: u32, 5632 pub Reserved: u32, 5633 } 5634 impl ::core::marker::Copy for KSSTREAMALLOCATOR_STATUS_EX {} 5635 impl ::core::clone::Clone for KSSTREAMALLOCATOR_STATUS_EX { clone(&self) -> Self5636 fn clone(&self) -> Self { 5637 *self 5638 } 5639 } 5640 pub const KSSTREAM_FAILUREEXCEPTION: u32 = 8192u32; 5641 #[repr(C)] 5642 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 5643 pub struct KSSTREAM_HEADER { 5644 pub Size: u32, 5645 pub TypeSpecificFlags: u32, 5646 pub PresentationTime: KSTIME, 5647 pub Duration: i64, 5648 pub FrameExtent: u32, 5649 pub DataUsed: u32, 5650 pub Data: *mut ::core::ffi::c_void, 5651 pub OptionsFlags: u32, 5652 pub Reserved: u32, 5653 } 5654 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 5655 impl ::core::marker::Copy for KSSTREAM_HEADER {} 5656 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 5657 impl ::core::clone::Clone for KSSTREAM_HEADER { clone(&self) -> Self5658 fn clone(&self) -> Self { 5659 *self 5660 } 5661 } 5662 #[repr(C)] 5663 #[cfg(any(target_arch = "x86",))] 5664 pub struct KSSTREAM_HEADER { 5665 pub Size: u32, 5666 pub TypeSpecificFlags: u32, 5667 pub PresentationTime: KSTIME, 5668 pub Duration: i64, 5669 pub FrameExtent: u32, 5670 pub DataUsed: u32, 5671 pub Data: *mut ::core::ffi::c_void, 5672 pub OptionsFlags: u32, 5673 } 5674 #[cfg(any(target_arch = "x86",))] 5675 impl ::core::marker::Copy for KSSTREAM_HEADER {} 5676 #[cfg(any(target_arch = "x86",))] 5677 impl ::core::clone::Clone for KSSTREAM_HEADER { clone(&self) -> Self5678 fn clone(&self) -> Self { 5679 *self 5680 } 5681 } 5682 pub const KSSTREAM_HEADER_OPTIONSF_BUFFEREDTRANSFER: u32 = 1024u32; 5683 pub const KSSTREAM_HEADER_OPTIONSF_DATADISCONTINUITY: u32 = 4u32; 5684 pub const KSSTREAM_HEADER_OPTIONSF_DURATIONVALID: u32 = 256u32; 5685 pub const KSSTREAM_HEADER_OPTIONSF_ENDOFPHOTOSEQUENCE: u32 = 8192u32; 5686 pub const KSSTREAM_HEADER_OPTIONSF_ENDOFSTREAM: u32 = 512u32; 5687 pub const KSSTREAM_HEADER_OPTIONSF_FLUSHONPAUSE: u32 = 128u32; 5688 pub const KSSTREAM_HEADER_OPTIONSF_FRAMEINFO: u32 = 16384u32; 5689 pub const KSSTREAM_HEADER_OPTIONSF_LOOPEDDATA: u32 = 2147483648u32; 5690 pub const KSSTREAM_HEADER_OPTIONSF_METADATA: u32 = 4096u32; 5691 pub const KSSTREAM_HEADER_OPTIONSF_PERSIST_SAMPLE: u32 = 32768u32; 5692 pub const KSSTREAM_HEADER_OPTIONSF_PREROLL: u32 = 2u32; 5693 pub const KSSTREAM_HEADER_OPTIONSF_SAMPLE_PERSISTED: u32 = 65536u32; 5694 pub const KSSTREAM_HEADER_OPTIONSF_SECUREBUFFERTRANSFER: u32 = 262144u32; 5695 pub const KSSTREAM_HEADER_OPTIONSF_SPLICEPOINT: u32 = 1u32; 5696 pub const KSSTREAM_HEADER_OPTIONSF_TIMEDISCONTINUITY: u32 = 64u32; 5697 pub const KSSTREAM_HEADER_OPTIONSF_TIMEVALID: u32 = 16u32; 5698 pub const KSSTREAM_HEADER_OPTIONSF_TYPECHANGED: u32 = 8u32; 5699 pub const KSSTREAM_HEADER_OPTIONSF_VRAM_DATA_TRANSFER: u32 = 2048u32; 5700 pub const KSSTREAM_HEADER_TRACK_COMPLETION_NUMBERS: u32 = 131072u32; 5701 #[repr(C)] 5702 pub struct KSSTREAM_METADATA_INFO { 5703 pub BufferSize: u32, 5704 pub UsedSize: u32, 5705 pub Data: *mut ::core::ffi::c_void, 5706 pub SystemVa: *mut ::core::ffi::c_void, 5707 pub Flags: u32, 5708 pub Reserved: u32, 5709 } 5710 impl ::core::marker::Copy for KSSTREAM_METADATA_INFO {} 5711 impl ::core::clone::Clone for KSSTREAM_METADATA_INFO { clone(&self) -> Self5712 fn clone(&self) -> Self { 5713 *self 5714 } 5715 } 5716 pub const KSSTREAM_NONPAGED_DATA: u32 = 256u32; 5717 pub const KSSTREAM_PAGED_DATA: u32 = 0u32; 5718 pub const KSSTREAM_READ: u32 = 0u32; 5719 pub const KSSTREAM_SYNCHRONOUS: u32 = 4096u32; 5720 #[repr(C)] 5721 pub struct KSSTREAM_UVC_METADATA { 5722 pub StartOfFrameTimestamp: KSSTREAM_UVC_METADATATYPE_TIMESTAMP, 5723 pub EndOfFrameTimestamp: KSSTREAM_UVC_METADATATYPE_TIMESTAMP, 5724 } 5725 impl ::core::marker::Copy for KSSTREAM_UVC_METADATA {} 5726 impl ::core::clone::Clone for KSSTREAM_UVC_METADATA { clone(&self) -> Self5727 fn clone(&self) -> Self { 5728 *self 5729 } 5730 } 5731 #[repr(C)] 5732 pub struct KSSTREAM_UVC_METADATATYPE_TIMESTAMP { 5733 pub PresentationTimeStamp: u32, 5734 pub SourceClockReference: u32, 5735 pub Anonymous: KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0, 5736 pub Reserved0: u16, 5737 pub Reserved1: u32, 5738 } 5739 impl ::core::marker::Copy for KSSTREAM_UVC_METADATATYPE_TIMESTAMP {} 5740 impl ::core::clone::Clone for KSSTREAM_UVC_METADATATYPE_TIMESTAMP { clone(&self) -> Self5741 fn clone(&self) -> Self { 5742 *self 5743 } 5744 } 5745 #[repr(C)] 5746 pub union KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0 { 5747 pub Anonymous: KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0_0, 5748 pub SCRToken: u16, 5749 } 5750 impl ::core::marker::Copy for KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0 {} 5751 impl ::core::clone::Clone for KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0 { clone(&self) -> Self5752 fn clone(&self) -> Self { 5753 *self 5754 } 5755 } 5756 #[repr(C)] 5757 pub struct KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0_0 { 5758 pub _bitfield: u16, 5759 } 5760 impl ::core::marker::Copy for KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0_0 {} 5761 impl ::core::clone::Clone for KSSTREAM_UVC_METADATATYPE_TIMESTAMP_0_0 { clone(&self) -> Self5762 fn clone(&self) -> Self { 5763 *self 5764 } 5765 } 5766 pub const KSSTREAM_UVC_SECURE_ATTRIBUTE_SIZE: u32 = 8192u32; 5767 pub const KSSTREAM_WRITE: u32 = 1u32; 5768 #[repr(C)] 5769 pub struct KSTELEPHONY_CALLCONTROL { 5770 pub CallType: TELEPHONY_CALLTYPE, 5771 pub CallControlOp: TELEPHONY_CALLCONTROLOP, 5772 } 5773 impl ::core::marker::Copy for KSTELEPHONY_CALLCONTROL {} 5774 impl ::core::clone::Clone for KSTELEPHONY_CALLCONTROL { clone(&self) -> Self5775 fn clone(&self) -> Self { 5776 *self 5777 } 5778 } 5779 #[repr(C)] 5780 pub struct KSTELEPHONY_CALLINFO { 5781 pub CallType: TELEPHONY_CALLTYPE, 5782 pub CallState: TELEPHONY_CALLSTATE, 5783 } 5784 impl ::core::marker::Copy for KSTELEPHONY_CALLINFO {} 5785 impl ::core::clone::Clone for KSTELEPHONY_CALLINFO { clone(&self) -> Self5786 fn clone(&self) -> Self { 5787 *self 5788 } 5789 } 5790 #[repr(C)] 5791 pub struct KSTELEPHONY_PROVIDERCHANGE { 5792 pub CallType: TELEPHONY_CALLTYPE, 5793 pub ProviderChangeOp: TELEPHONY_PROVIDERCHANGEOP, 5794 } 5795 impl ::core::marker::Copy for KSTELEPHONY_PROVIDERCHANGE {} 5796 impl ::core::clone::Clone for KSTELEPHONY_PROVIDERCHANGE { clone(&self) -> Self5797 fn clone(&self) -> Self { 5798 *self 5799 } 5800 } 5801 #[repr(C)] 5802 pub struct KSTIME { 5803 pub Time: i64, 5804 pub Numerator: u32, 5805 pub Denominator: u32, 5806 } 5807 impl ::core::marker::Copy for KSTIME {} 5808 impl ::core::clone::Clone for KSTIME { clone(&self) -> Self5809 fn clone(&self) -> Self { 5810 *self 5811 } 5812 } 5813 pub const KSTIME_FORMAT_BYTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483761, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; 5814 pub const KSTIME_FORMAT_FIELD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483763, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; 5815 pub const KSTIME_FORMAT_FRAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483760, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; 5816 pub const KSTIME_FORMAT_MEDIA_TIME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483764, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; 5817 pub const KSTIME_FORMAT_SAMPLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483762, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; 5818 #[repr(C)] 5819 pub struct KSTOPOLOGY { 5820 pub CategoriesCount: u32, 5821 pub Categories: *mut ::windows_sys::core::GUID, 5822 pub TopologyNodesCount: u32, 5823 pub TopologyNodes: *mut ::windows_sys::core::GUID, 5824 pub TopologyConnectionsCount: u32, 5825 pub TopologyConnections: *mut KSTOPOLOGY_CONNECTION, 5826 pub TopologyNodesNames: *mut ::windows_sys::core::GUID, 5827 pub Reserved: u32, 5828 } 5829 impl ::core::marker::Copy for KSTOPOLOGY {} 5830 impl ::core::clone::Clone for KSTOPOLOGY { clone(&self) -> Self5831 fn clone(&self) -> Self { 5832 *self 5833 } 5834 } 5835 #[repr(C)] 5836 pub struct KSTOPOLOGY_CONNECTION { 5837 pub FromNode: u32, 5838 pub FromNodePin: u32, 5839 pub ToNode: u32, 5840 pub ToNodePin: u32, 5841 } 5842 impl ::core::marker::Copy for KSTOPOLOGY_CONNECTION {} 5843 impl ::core::clone::Clone for KSTOPOLOGY_CONNECTION { clone(&self) -> Self5844 fn clone(&self) -> Self { 5845 *self 5846 } 5847 } 5848 #[repr(C)] 5849 pub struct KSTOPOLOGY_ENDPOINTID { 5850 pub TopologyName: [u16; 260], 5851 pub PinId: u32, 5852 } 5853 impl ::core::marker::Copy for KSTOPOLOGY_ENDPOINTID {} 5854 impl ::core::clone::Clone for KSTOPOLOGY_ENDPOINTID { clone(&self) -> Self5855 fn clone(&self) -> Self { 5856 *self 5857 } 5858 } 5859 #[repr(C)] 5860 pub struct KSTOPOLOGY_ENDPOINTIDPAIR { 5861 pub RenderEndpoint: KSTOPOLOGY_ENDPOINTID, 5862 pub CaptureEndpoint: KSTOPOLOGY_ENDPOINTID, 5863 } 5864 impl ::core::marker::Copy for KSTOPOLOGY_ENDPOINTIDPAIR {} 5865 impl ::core::clone::Clone for KSTOPOLOGY_ENDPOINTIDPAIR { clone(&self) -> Self5866 fn clone(&self) -> Self { 5867 *self 5868 } 5869 } 5870 #[repr(C)] 5871 pub struct KSVPMAXPIXELRATE { 5872 pub Size: KS_AMVPSIZE, 5873 pub MaxPixelsPerSecond: u32, 5874 pub Reserved: u32, 5875 } 5876 impl ::core::marker::Copy for KSVPMAXPIXELRATE {} 5877 impl ::core::clone::Clone for KSVPMAXPIXELRATE { clone(&self) -> Self5878 fn clone(&self) -> Self { 5879 *self 5880 } 5881 } 5882 #[repr(C)] 5883 pub struct KSVPSIZE_PROP { 5884 pub Property: KSIDENTIFIER, 5885 pub Size: KS_AMVPSIZE, 5886 } 5887 impl ::core::marker::Copy for KSVPSIZE_PROP {} 5888 impl ::core::clone::Clone for KSVPSIZE_PROP { clone(&self) -> Self5889 fn clone(&self) -> Self { 5890 *self 5891 } 5892 } 5893 #[repr(C)] 5894 pub struct KSVPSURFACEPARAMS { 5895 pub dwPitch: u32, 5896 pub dwXOrigin: u32, 5897 pub dwYOrigin: u32, 5898 } 5899 impl ::core::marker::Copy for KSVPSURFACEPARAMS {} 5900 impl ::core::clone::Clone for KSVPSURFACEPARAMS { clone(&self) -> Self5901 fn clone(&self) -> Self { 5902 *self 5903 } 5904 } 5905 #[repr(C)] 5906 #[cfg(feature = "Win32_Foundation")] 5907 pub struct KSWAVETABLE_WAVE_DESC { 5908 pub Identifier: KSIDENTIFIER, 5909 pub Size: u32, 5910 pub Looped: super::super::Foundation::BOOL, 5911 pub LoopPoint: u32, 5912 pub InROM: super::super::Foundation::BOOL, 5913 pub Format: KSDATAFORMAT, 5914 } 5915 #[cfg(feature = "Win32_Foundation")] 5916 impl ::core::marker::Copy for KSWAVETABLE_WAVE_DESC {} 5917 #[cfg(feature = "Win32_Foundation")] 5918 impl ::core::clone::Clone for KSWAVETABLE_WAVE_DESC { clone(&self) -> Self5919 fn clone(&self) -> Self { 5920 *self 5921 } 5922 } 5923 #[repr(C)] 5924 pub struct KSWAVE_BUFFER { 5925 pub Attributes: u32, 5926 pub BufferSize: u32, 5927 pub BufferAddress: *mut ::core::ffi::c_void, 5928 } 5929 impl ::core::marker::Copy for KSWAVE_BUFFER {} 5930 impl ::core::clone::Clone for KSWAVE_BUFFER { clone(&self) -> Self5931 fn clone(&self) -> Self { 5932 *self 5933 } 5934 } 5935 pub const KSWAVE_BUFFER_ATTRIBUTEF_LOOPING: u32 = 1u32; 5936 pub const KSWAVE_BUFFER_ATTRIBUTEF_STATIC: u32 = 2u32; 5937 #[repr(C)] 5938 pub struct KSWAVE_COMPATCAPS { 5939 pub ulDeviceType: u32, 5940 } 5941 impl ::core::marker::Copy for KSWAVE_COMPATCAPS {} 5942 impl ::core::clone::Clone for KSWAVE_COMPATCAPS { clone(&self) -> Self5943 fn clone(&self) -> Self { 5944 *self 5945 } 5946 } 5947 pub const KSWAVE_COMPATCAPS_INPUT: u32 = 0u32; 5948 pub const KSWAVE_COMPATCAPS_OUTPUT: u32 = 1u32; 5949 #[repr(C)] 5950 pub struct KSWAVE_INPUT_CAPABILITIES { 5951 pub MaximumChannelsPerConnection: u32, 5952 pub MinimumBitsPerSample: u32, 5953 pub MaximumBitsPerSample: u32, 5954 pub MinimumSampleFrequency: u32, 5955 pub MaximumSampleFrequency: u32, 5956 pub TotalConnections: u32, 5957 pub ActiveConnections: u32, 5958 } 5959 impl ::core::marker::Copy for KSWAVE_INPUT_CAPABILITIES {} 5960 impl ::core::clone::Clone for KSWAVE_INPUT_CAPABILITIES { clone(&self) -> Self5961 fn clone(&self) -> Self { 5962 *self 5963 } 5964 } 5965 #[repr(C)] 5966 pub struct KSWAVE_OUTPUT_CAPABILITIES { 5967 pub MaximumChannelsPerConnection: u32, 5968 pub MinimumBitsPerSample: u32, 5969 pub MaximumBitsPerSample: u32, 5970 pub MinimumSampleFrequency: u32, 5971 pub MaximumSampleFrequency: u32, 5972 pub TotalConnections: u32, 5973 pub StaticConnections: u32, 5974 pub StreamingConnections: u32, 5975 pub ActiveConnections: u32, 5976 pub ActiveStaticConnections: u32, 5977 pub ActiveStreamingConnections: u32, 5978 pub Total3DConnections: u32, 5979 pub Static3DConnections: u32, 5980 pub Streaming3DConnections: u32, 5981 pub Active3DConnections: u32, 5982 pub ActiveStatic3DConnections: u32, 5983 pub ActiveStreaming3DConnections: u32, 5984 pub TotalSampleMemory: u32, 5985 pub FreeSampleMemory: u32, 5986 pub LargestFreeContiguousSampleMemory: u32, 5987 } 5988 impl ::core::marker::Copy for KSWAVE_OUTPUT_CAPABILITIES {} 5989 impl ::core::clone::Clone for KSWAVE_OUTPUT_CAPABILITIES { clone(&self) -> Self5990 fn clone(&self) -> Self { 5991 *self 5992 } 5993 } 5994 #[repr(C)] 5995 pub struct KSWAVE_VOLUME { 5996 pub LeftAttenuation: i32, 5997 pub RightAttenuation: i32, 5998 } 5999 impl ::core::marker::Copy for KSWAVE_VOLUME {} 6000 impl ::core::clone::Clone for KSWAVE_VOLUME { clone(&self) -> Self6001 fn clone(&self) -> Self { 6002 *self 6003 } 6004 } 6005 pub const KS_AMCONTROL_COLORINFO_PRESENT: u32 = 128u32; 6006 pub const KS_AMCONTROL_PAD_TO_16x9: u32 = 4u32; 6007 pub const KS_AMCONTROL_PAD_TO_4x3: u32 = 2u32; 6008 pub const KS_AMCONTROL_USED: u32 = 1u32; 6009 pub type KS_AMPixAspectRatio = i32; 6010 pub const KS_PixAspectRatio_NTSC4x3: KS_AMPixAspectRatio = 0i32; 6011 pub const KS_PixAspectRatio_NTSC16x9: KS_AMPixAspectRatio = 1i32; 6012 pub const KS_PixAspectRatio_PAL4x3: KS_AMPixAspectRatio = 2i32; 6013 pub const KS_PixAspectRatio_PAL16x9: KS_AMPixAspectRatio = 3i32; 6014 #[repr(C)] 6015 #[cfg(feature = "Win32_Foundation")] 6016 pub struct KS_AMVPDATAINFO { 6017 pub dwSize: u32, 6018 pub dwMicrosecondsPerField: u32, 6019 pub amvpDimInfo: KS_AMVPDIMINFO, 6020 pub dwPictAspectRatioX: u32, 6021 pub dwPictAspectRatioY: u32, 6022 pub bEnableDoubleClock: super::super::Foundation::BOOL, 6023 pub bEnableVACT: super::super::Foundation::BOOL, 6024 pub bDataIsInterlaced: super::super::Foundation::BOOL, 6025 pub lHalfLinesOdd: i32, 6026 pub bFieldPolarityInverted: super::super::Foundation::BOOL, 6027 pub dwNumLinesInVREF: u32, 6028 pub lHalfLinesEven: i32, 6029 pub dwReserved1: u32, 6030 } 6031 #[cfg(feature = "Win32_Foundation")] 6032 impl ::core::marker::Copy for KS_AMVPDATAINFO {} 6033 #[cfg(feature = "Win32_Foundation")] 6034 impl ::core::clone::Clone for KS_AMVPDATAINFO { clone(&self) -> Self6035 fn clone(&self) -> Self { 6036 *self 6037 } 6038 } 6039 #[repr(C)] 6040 #[cfg(feature = "Win32_Foundation")] 6041 pub struct KS_AMVPDIMINFO { 6042 pub dwFieldWidth: u32, 6043 pub dwFieldHeight: u32, 6044 pub dwVBIWidth: u32, 6045 pub dwVBIHeight: u32, 6046 pub rcValidRegion: super::super::Foundation::RECT, 6047 } 6048 #[cfg(feature = "Win32_Foundation")] 6049 impl ::core::marker::Copy for KS_AMVPDIMINFO {} 6050 #[cfg(feature = "Win32_Foundation")] 6051 impl ::core::clone::Clone for KS_AMVPDIMINFO { clone(&self) -> Self6052 fn clone(&self) -> Self { 6053 *self 6054 } 6055 } 6056 #[repr(C)] 6057 pub struct KS_AMVPSIZE { 6058 pub dwWidth: u32, 6059 pub dwHeight: u32, 6060 } 6061 impl ::core::marker::Copy for KS_AMVPSIZE {} 6062 impl ::core::clone::Clone for KS_AMVPSIZE { clone(&self) -> Self6063 fn clone(&self) -> Self { 6064 *self 6065 } 6066 } 6067 pub type KS_AMVP_MODE = i32; 6068 pub const KS_AMVP_MODE_WEAVE: KS_AMVP_MODE = 0i32; 6069 pub const KS_AMVP_MODE_BOBINTERLEAVED: KS_AMVP_MODE = 1i32; 6070 pub const KS_AMVP_MODE_BOBNONINTERLEAVED: KS_AMVP_MODE = 2i32; 6071 pub const KS_AMVP_MODE_SKIPEVEN: KS_AMVP_MODE = 3i32; 6072 pub const KS_AMVP_MODE_SKIPODD: KS_AMVP_MODE = 4i32; 6073 pub type KS_AMVP_SELECTFORMATBY = i32; 6074 pub const KS_AMVP_DO_NOT_CARE: KS_AMVP_SELECTFORMATBY = 0i32; 6075 pub const KS_AMVP_BEST_BANDWIDTH: KS_AMVP_SELECTFORMATBY = 1i32; 6076 pub const KS_AMVP_INPUT_SAME_AS_OUTPUT: KS_AMVP_SELECTFORMATBY = 2i32; 6077 #[repr(C)] 6078 pub struct KS_AM_ExactRateChange { 6079 pub OutputZeroTime: i64, 6080 pub Rate: i32, 6081 } 6082 impl ::core::marker::Copy for KS_AM_ExactRateChange {} 6083 impl ::core::clone::Clone for KS_AM_ExactRateChange { clone(&self) -> Self6084 fn clone(&self) -> Self { 6085 *self 6086 } 6087 } 6088 pub type KS_AM_PROPERTY_TS_RATE_CHANGE = i32; 6089 pub const KS_AM_RATE_SimpleRateChange: KS_AM_PROPERTY_TS_RATE_CHANGE = 1i32; 6090 pub const KS_AM_RATE_ExactRateChange: KS_AM_PROPERTY_TS_RATE_CHANGE = 2i32; 6091 pub const KS_AM_RATE_MaxFullDataRate: KS_AM_PROPERTY_TS_RATE_CHANGE = 3i32; 6092 pub const KS_AM_RATE_Step: KS_AM_PROPERTY_TS_RATE_CHANGE = 4i32; 6093 #[repr(C)] 6094 pub struct KS_AM_SimpleRateChange { 6095 pub StartTime: i64, 6096 pub Rate: i32, 6097 } 6098 impl ::core::marker::Copy for KS_AM_SimpleRateChange {} 6099 impl ::core::clone::Clone for KS_AM_SimpleRateChange { clone(&self) -> Self6100 fn clone(&self) -> Self { 6101 *self 6102 } 6103 } 6104 pub const KS_AM_UseNewCSSKey: i32 = 1i32; 6105 #[repr(C)] 6106 #[cfg(feature = "Win32_Foundation")] 6107 pub struct KS_AnalogVideoInfo { 6108 pub rcSource: super::super::Foundation::RECT, 6109 pub rcTarget: super::super::Foundation::RECT, 6110 pub dwActiveWidth: u32, 6111 pub dwActiveHeight: u32, 6112 pub AvgTimePerFrame: i64, 6113 } 6114 #[cfg(feature = "Win32_Foundation")] 6115 impl ::core::marker::Copy for KS_AnalogVideoInfo {} 6116 #[cfg(feature = "Win32_Foundation")] 6117 impl ::core::clone::Clone for KS_AnalogVideoInfo { clone(&self) -> Self6118 fn clone(&self) -> Self { 6119 *self 6120 } 6121 } 6122 pub type KS_AnalogVideoStandard = i32; 6123 pub const KS_AnalogVideo_None: KS_AnalogVideoStandard = 0i32; 6124 pub const KS_AnalogVideo_NTSC_M: KS_AnalogVideoStandard = 1i32; 6125 pub const KS_AnalogVideo_NTSC_M_J: KS_AnalogVideoStandard = 2i32; 6126 pub const KS_AnalogVideo_NTSC_433: KS_AnalogVideoStandard = 4i32; 6127 pub const KS_AnalogVideo_PAL_B: KS_AnalogVideoStandard = 16i32; 6128 pub const KS_AnalogVideo_PAL_D: KS_AnalogVideoStandard = 32i32; 6129 pub const KS_AnalogVideo_PAL_G: KS_AnalogVideoStandard = 64i32; 6130 pub const KS_AnalogVideo_PAL_H: KS_AnalogVideoStandard = 128i32; 6131 pub const KS_AnalogVideo_PAL_I: KS_AnalogVideoStandard = 256i32; 6132 pub const KS_AnalogVideo_PAL_M: KS_AnalogVideoStandard = 512i32; 6133 pub const KS_AnalogVideo_PAL_N: KS_AnalogVideoStandard = 1024i32; 6134 pub const KS_AnalogVideo_PAL_60: KS_AnalogVideoStandard = 2048i32; 6135 pub const KS_AnalogVideo_SECAM_B: KS_AnalogVideoStandard = 4096i32; 6136 pub const KS_AnalogVideo_SECAM_D: KS_AnalogVideoStandard = 8192i32; 6137 pub const KS_AnalogVideo_SECAM_G: KS_AnalogVideoStandard = 16384i32; 6138 pub const KS_AnalogVideo_SECAM_H: KS_AnalogVideoStandard = 32768i32; 6139 pub const KS_AnalogVideo_SECAM_K: KS_AnalogVideoStandard = 65536i32; 6140 pub const KS_AnalogVideo_SECAM_K1: KS_AnalogVideoStandard = 131072i32; 6141 pub const KS_AnalogVideo_SECAM_L: KS_AnalogVideoStandard = 262144i32; 6142 pub const KS_AnalogVideo_SECAM_L1: KS_AnalogVideoStandard = 524288i32; 6143 pub const KS_AnalogVideo_PAL_N_COMBO: KS_AnalogVideoStandard = 1048576i32; 6144 pub const KS_AnalogVideo_NTSC_Mask: u32 = 7u32; 6145 pub const KS_AnalogVideo_PAL_Mask: u32 = 1052656u32; 6146 pub const KS_AnalogVideo_SECAM_Mask: u32 = 1044480u32; 6147 #[repr(C)] 6148 pub struct KS_BITMAPINFOHEADER { 6149 pub biSize: u32, 6150 pub biWidth: i32, 6151 pub biHeight: i32, 6152 pub biPlanes: u16, 6153 pub biBitCount: u16, 6154 pub biCompression: u32, 6155 pub biSizeImage: u32, 6156 pub biXPelsPerMeter: i32, 6157 pub biYPelsPerMeter: i32, 6158 pub biClrUsed: u32, 6159 pub biClrImportant: u32, 6160 } 6161 impl ::core::marker::Copy for KS_BITMAPINFOHEADER {} 6162 impl ::core::clone::Clone for KS_BITMAPINFOHEADER { clone(&self) -> Self6163 fn clone(&self) -> Self { 6164 *self 6165 } 6166 } 6167 pub const KS_BI_BITFIELDS: i32 = 3i32; 6168 pub const KS_BI_JPEG: i32 = 4i32; 6169 pub const KS_BI_RGB: i32 = 0i32; 6170 pub const KS_BI_RLE4: i32 = 2i32; 6171 pub const KS_BI_RLE8: i32 = 1i32; 6172 pub const KS_CC_SUBSTREAM_EVEN: i32 = 2i32; 6173 pub const KS_CC_SUBSTREAM_FIELD1_MASK: i32 = 240i32; 6174 pub const KS_CC_SUBSTREAM_FIELD2_MASK: i32 = 7936i32; 6175 pub const KS_CC_SUBSTREAM_ODD: i32 = 1i32; 6176 pub const KS_CC_SUBSTREAM_SERVICE_CC1: i32 = 16i32; 6177 pub const KS_CC_SUBSTREAM_SERVICE_CC2: i32 = 32i32; 6178 pub const KS_CC_SUBSTREAM_SERVICE_CC3: i32 = 256i32; 6179 pub const KS_CC_SUBSTREAM_SERVICE_CC4: i32 = 512i32; 6180 pub const KS_CC_SUBSTREAM_SERVICE_T1: i32 = 64i32; 6181 pub const KS_CC_SUBSTREAM_SERVICE_T2: i32 = 128i32; 6182 pub const KS_CC_SUBSTREAM_SERVICE_T3: i32 = 1024i32; 6183 pub const KS_CC_SUBSTREAM_SERVICE_T4: i32 = 2048i32; 6184 pub const KS_CC_SUBSTREAM_SERVICE_XDS: i32 = 4096i32; 6185 #[repr(C)] 6186 pub struct KS_COLCON { 6187 pub _bitfield1: u8, 6188 pub _bitfield2: u8, 6189 pub _bitfield3: u8, 6190 pub _bitfield4: u8, 6191 } 6192 impl ::core::marker::Copy for KS_COLCON {} 6193 impl ::core::clone::Clone for KS_COLCON { clone(&self) -> Self6194 fn clone(&self) -> Self { 6195 *self 6196 } 6197 } 6198 #[repr(C)] 6199 pub struct KS_COMPRESSION { 6200 pub RatioNumerator: u32, 6201 pub RatioDenominator: u32, 6202 pub RatioConstantMargin: u32, 6203 } 6204 impl ::core::marker::Copy for KS_COMPRESSION {} 6205 impl ::core::clone::Clone for KS_COMPRESSION { clone(&self) -> Self6206 fn clone(&self) -> Self { 6207 *self 6208 } 6209 } 6210 pub const KS_COPYPROTECT_RestrictDuplication: u32 = 1u32; 6211 #[repr(C)] 6212 pub struct KS_COPY_MACROVISION { 6213 pub MACROVISIONLevel: u32, 6214 } 6215 impl ::core::marker::Copy for KS_COPY_MACROVISION {} 6216 impl ::core::clone::Clone for KS_COPY_MACROVISION { clone(&self) -> Self6217 fn clone(&self) -> Self { 6218 *self 6219 } 6220 } 6221 pub type KS_COPY_MACROVISION_LEVEL = i32; 6222 pub const KS_MACROVISION_DISABLED: KS_COPY_MACROVISION_LEVEL = 0i32; 6223 pub const KS_MACROVISION_LEVEL1: KS_COPY_MACROVISION_LEVEL = 1i32; 6224 pub const KS_MACROVISION_LEVEL2: KS_COPY_MACROVISION_LEVEL = 2i32; 6225 pub const KS_MACROVISION_LEVEL3: KS_COPY_MACROVISION_LEVEL = 3i32; 6226 pub type KS_CameraControlAsyncOperation = i32; 6227 pub const KS_CAMERACONTROL_ASYNC_START: KS_CameraControlAsyncOperation = 1i32; 6228 pub const KS_CAMERACONTROL_ASYNC_STOP: KS_CameraControlAsyncOperation = 2i32; 6229 pub const KS_CAMERACONTROL_ASYNC_RESET: KS_CameraControlAsyncOperation = 3i32; 6230 pub type KS_CompressionCaps = i32; 6231 pub const KS_CompressionCaps_CanQuality: KS_CompressionCaps = 1i32; 6232 pub const KS_CompressionCaps_CanCrunch: KS_CompressionCaps = 2i32; 6233 pub const KS_CompressionCaps_CanKeyFrame: KS_CompressionCaps = 4i32; 6234 pub const KS_CompressionCaps_CanBFrame: KS_CompressionCaps = 8i32; 6235 pub const KS_CompressionCaps_CanWindow: KS_CompressionCaps = 16i32; 6236 #[repr(C)] 6237 pub struct KS_DATAFORMAT_H264VIDEOINFO { 6238 pub DataFormat: KSDATAFORMAT, 6239 pub H264VideoInfoHeader: KS_H264VIDEOINFO, 6240 } 6241 impl ::core::marker::Copy for KS_DATAFORMAT_H264VIDEOINFO {} 6242 impl ::core::clone::Clone for KS_DATAFORMAT_H264VIDEOINFO { clone(&self) -> Self6243 fn clone(&self) -> Self { 6244 *self 6245 } 6246 } 6247 #[repr(C)] 6248 pub struct KS_DATAFORMAT_IMAGEINFO { 6249 pub DataFormat: KSDATAFORMAT, 6250 pub ImageInfoHeader: KS_BITMAPINFOHEADER, 6251 } 6252 impl ::core::marker::Copy for KS_DATAFORMAT_IMAGEINFO {} 6253 impl ::core::clone::Clone for KS_DATAFORMAT_IMAGEINFO { clone(&self) -> Self6254 fn clone(&self) -> Self { 6255 *self 6256 } 6257 } 6258 #[repr(C)] 6259 #[cfg(feature = "Win32_Foundation")] 6260 pub struct KS_DATAFORMAT_MPEGVIDEOINFO2 { 6261 pub DataFormat: KSDATAFORMAT, 6262 pub MpegVideoInfoHeader2: KS_MPEGVIDEOINFO2, 6263 } 6264 #[cfg(feature = "Win32_Foundation")] 6265 impl ::core::marker::Copy for KS_DATAFORMAT_MPEGVIDEOINFO2 {} 6266 #[cfg(feature = "Win32_Foundation")] 6267 impl ::core::clone::Clone for KS_DATAFORMAT_MPEGVIDEOINFO2 { clone(&self) -> Self6268 fn clone(&self) -> Self { 6269 *self 6270 } 6271 } 6272 #[repr(C)] 6273 pub struct KS_DATAFORMAT_VBIINFOHEADER { 6274 pub DataFormat: KSDATAFORMAT, 6275 pub VBIInfoHeader: KS_VBIINFOHEADER, 6276 } 6277 impl ::core::marker::Copy for KS_DATAFORMAT_VBIINFOHEADER {} 6278 impl ::core::clone::Clone for KS_DATAFORMAT_VBIINFOHEADER { clone(&self) -> Self6279 fn clone(&self) -> Self { 6280 *self 6281 } 6282 } 6283 #[repr(C)] 6284 #[cfg(feature = "Win32_Foundation")] 6285 pub struct KS_DATAFORMAT_VIDEOINFOHEADER { 6286 pub DataFormat: KSDATAFORMAT, 6287 pub VideoInfoHeader: KS_VIDEOINFOHEADER, 6288 } 6289 #[cfg(feature = "Win32_Foundation")] 6290 impl ::core::marker::Copy for KS_DATAFORMAT_VIDEOINFOHEADER {} 6291 #[cfg(feature = "Win32_Foundation")] 6292 impl ::core::clone::Clone for KS_DATAFORMAT_VIDEOINFOHEADER { clone(&self) -> Self6293 fn clone(&self) -> Self { 6294 *self 6295 } 6296 } 6297 #[repr(C)] 6298 #[cfg(feature = "Win32_Foundation")] 6299 pub struct KS_DATAFORMAT_VIDEOINFOHEADER2 { 6300 pub DataFormat: KSDATAFORMAT, 6301 pub VideoInfoHeader2: KS_VIDEOINFOHEADER2, 6302 } 6303 #[cfg(feature = "Win32_Foundation")] 6304 impl ::core::marker::Copy for KS_DATAFORMAT_VIDEOINFOHEADER2 {} 6305 #[cfg(feature = "Win32_Foundation")] 6306 impl ::core::clone::Clone for KS_DATAFORMAT_VIDEOINFOHEADER2 { clone(&self) -> Self6307 fn clone(&self) -> Self { 6308 *self 6309 } 6310 } 6311 #[repr(C)] 6312 #[cfg(feature = "Win32_Foundation")] 6313 pub struct KS_DATAFORMAT_VIDEOINFO_PALETTE { 6314 pub DataFormat: KSDATAFORMAT, 6315 pub VideoInfo: KS_VIDEOINFO, 6316 } 6317 #[cfg(feature = "Win32_Foundation")] 6318 impl ::core::marker::Copy for KS_DATAFORMAT_VIDEOINFO_PALETTE {} 6319 #[cfg(feature = "Win32_Foundation")] 6320 impl ::core::clone::Clone for KS_DATAFORMAT_VIDEOINFO_PALETTE { clone(&self) -> Self6321 fn clone(&self) -> Self { 6322 *self 6323 } 6324 } 6325 #[repr(C)] 6326 #[cfg(feature = "Win32_Foundation")] 6327 pub struct KS_DATARANGE_ANALOGVIDEO { 6328 pub DataRange: KSDATAFORMAT, 6329 pub AnalogVideoInfo: KS_AnalogVideoInfo, 6330 } 6331 #[cfg(feature = "Win32_Foundation")] 6332 impl ::core::marker::Copy for KS_DATARANGE_ANALOGVIDEO {} 6333 #[cfg(feature = "Win32_Foundation")] 6334 impl ::core::clone::Clone for KS_DATARANGE_ANALOGVIDEO { clone(&self) -> Self6335 fn clone(&self) -> Self { 6336 *self 6337 } 6338 } 6339 #[repr(C)] 6340 #[cfg(feature = "Win32_Foundation")] 6341 pub struct KS_DATARANGE_H264_VIDEO { 6342 pub DataRange: KSDATAFORMAT, 6343 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6344 pub bTemporalCompression: super::super::Foundation::BOOL, 6345 pub StreamDescriptionFlags: u32, 6346 pub MemoryAllocationFlags: u32, 6347 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6348 pub VideoInfoHeader: KS_H264VIDEOINFO, 6349 } 6350 #[cfg(feature = "Win32_Foundation")] 6351 impl ::core::marker::Copy for KS_DATARANGE_H264_VIDEO {} 6352 #[cfg(feature = "Win32_Foundation")] 6353 impl ::core::clone::Clone for KS_DATARANGE_H264_VIDEO { clone(&self) -> Self6354 fn clone(&self) -> Self { 6355 *self 6356 } 6357 } 6358 #[repr(C)] 6359 #[cfg(feature = "Win32_Foundation")] 6360 pub struct KS_DATARANGE_IMAGE { 6361 pub DataRange: KSDATAFORMAT, 6362 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6363 pub ImageInfoHeader: KS_BITMAPINFOHEADER, 6364 } 6365 #[cfg(feature = "Win32_Foundation")] 6366 impl ::core::marker::Copy for KS_DATARANGE_IMAGE {} 6367 #[cfg(feature = "Win32_Foundation")] 6368 impl ::core::clone::Clone for KS_DATARANGE_IMAGE { clone(&self) -> Self6369 fn clone(&self) -> Self { 6370 *self 6371 } 6372 } 6373 #[repr(C)] 6374 #[cfg(feature = "Win32_Foundation")] 6375 pub struct KS_DATARANGE_MPEG1_VIDEO { 6376 pub DataRange: KSDATAFORMAT, 6377 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6378 pub bTemporalCompression: super::super::Foundation::BOOL, 6379 pub StreamDescriptionFlags: u32, 6380 pub MemoryAllocationFlags: u32, 6381 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6382 pub VideoInfoHeader: KS_MPEG1VIDEOINFO, 6383 } 6384 #[cfg(feature = "Win32_Foundation")] 6385 impl ::core::marker::Copy for KS_DATARANGE_MPEG1_VIDEO {} 6386 #[cfg(feature = "Win32_Foundation")] 6387 impl ::core::clone::Clone for KS_DATARANGE_MPEG1_VIDEO { clone(&self) -> Self6388 fn clone(&self) -> Self { 6389 *self 6390 } 6391 } 6392 #[repr(C)] 6393 #[cfg(feature = "Win32_Foundation")] 6394 pub struct KS_DATARANGE_MPEG2_VIDEO { 6395 pub DataRange: KSDATAFORMAT, 6396 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6397 pub bTemporalCompression: super::super::Foundation::BOOL, 6398 pub StreamDescriptionFlags: u32, 6399 pub MemoryAllocationFlags: u32, 6400 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6401 pub VideoInfoHeader: KS_MPEGVIDEOINFO2, 6402 } 6403 #[cfg(feature = "Win32_Foundation")] 6404 impl ::core::marker::Copy for KS_DATARANGE_MPEG2_VIDEO {} 6405 #[cfg(feature = "Win32_Foundation")] 6406 impl ::core::clone::Clone for KS_DATARANGE_MPEG2_VIDEO { clone(&self) -> Self6407 fn clone(&self) -> Self { 6408 *self 6409 } 6410 } 6411 #[repr(C)] 6412 #[cfg(feature = "Win32_Foundation")] 6413 pub struct KS_DATARANGE_VIDEO { 6414 pub DataRange: KSDATAFORMAT, 6415 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6416 pub bTemporalCompression: super::super::Foundation::BOOL, 6417 pub StreamDescriptionFlags: u32, 6418 pub MemoryAllocationFlags: u32, 6419 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6420 pub VideoInfoHeader: KS_VIDEOINFOHEADER, 6421 } 6422 #[cfg(feature = "Win32_Foundation")] 6423 impl ::core::marker::Copy for KS_DATARANGE_VIDEO {} 6424 #[cfg(feature = "Win32_Foundation")] 6425 impl ::core::clone::Clone for KS_DATARANGE_VIDEO { clone(&self) -> Self6426 fn clone(&self) -> Self { 6427 *self 6428 } 6429 } 6430 #[repr(C)] 6431 #[cfg(feature = "Win32_Foundation")] 6432 pub struct KS_DATARANGE_VIDEO2 { 6433 pub DataRange: KSDATAFORMAT, 6434 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6435 pub bTemporalCompression: super::super::Foundation::BOOL, 6436 pub StreamDescriptionFlags: u32, 6437 pub MemoryAllocationFlags: u32, 6438 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6439 pub VideoInfoHeader: KS_VIDEOINFOHEADER2, 6440 } 6441 #[cfg(feature = "Win32_Foundation")] 6442 impl ::core::marker::Copy for KS_DATARANGE_VIDEO2 {} 6443 #[cfg(feature = "Win32_Foundation")] 6444 impl ::core::clone::Clone for KS_DATARANGE_VIDEO2 { clone(&self) -> Self6445 fn clone(&self) -> Self { 6446 *self 6447 } 6448 } 6449 #[repr(C)] 6450 #[cfg(feature = "Win32_Foundation")] 6451 pub struct KS_DATARANGE_VIDEO_PALETTE { 6452 pub DataRange: KSDATAFORMAT, 6453 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6454 pub bTemporalCompression: super::super::Foundation::BOOL, 6455 pub StreamDescriptionFlags: u32, 6456 pub MemoryAllocationFlags: u32, 6457 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6458 pub VideoInfo: KS_VIDEOINFO, 6459 } 6460 #[cfg(feature = "Win32_Foundation")] 6461 impl ::core::marker::Copy for KS_DATARANGE_VIDEO_PALETTE {} 6462 #[cfg(feature = "Win32_Foundation")] 6463 impl ::core::clone::Clone for KS_DATARANGE_VIDEO_PALETTE { clone(&self) -> Self6464 fn clone(&self) -> Self { 6465 *self 6466 } 6467 } 6468 #[repr(C)] 6469 #[cfg(feature = "Win32_Foundation")] 6470 pub struct KS_DATARANGE_VIDEO_VBI { 6471 pub DataRange: KSDATAFORMAT, 6472 pub bFixedSizeSamples: super::super::Foundation::BOOL, 6473 pub bTemporalCompression: super::super::Foundation::BOOL, 6474 pub StreamDescriptionFlags: u32, 6475 pub MemoryAllocationFlags: u32, 6476 pub ConfigCaps: KS_VIDEO_STREAM_CONFIG_CAPS, 6477 pub VBIInfoHeader: KS_VBIINFOHEADER, 6478 } 6479 #[cfg(feature = "Win32_Foundation")] 6480 impl ::core::marker::Copy for KS_DATARANGE_VIDEO_VBI {} 6481 #[cfg(feature = "Win32_Foundation")] 6482 impl ::core::clone::Clone for KS_DATARANGE_VIDEO_VBI { clone(&self) -> Self6483 fn clone(&self) -> Self { 6484 *self 6485 } 6486 } 6487 pub type KS_DVDCOPYSTATE = i32; 6488 pub const KS_DVDCOPYSTATE_INITIALIZE: KS_DVDCOPYSTATE = 0i32; 6489 pub const KS_DVDCOPYSTATE_INITIALIZE_TITLE: KS_DVDCOPYSTATE = 1i32; 6490 pub const KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED: KS_DVDCOPYSTATE = 2i32; 6491 pub const KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED: KS_DVDCOPYSTATE = 3i32; 6492 pub const KS_DVDCOPYSTATE_DONE: KS_DVDCOPYSTATE = 4i32; 6493 #[repr(C)] 6494 pub struct KS_DVDCOPY_BUSKEY { 6495 pub BusKey: [u8; 5], 6496 pub Reserved: [u8; 1], 6497 } 6498 impl ::core::marker::Copy for KS_DVDCOPY_BUSKEY {} 6499 impl ::core::clone::Clone for KS_DVDCOPY_BUSKEY { clone(&self) -> Self6500 fn clone(&self) -> Self { 6501 *self 6502 } 6503 } 6504 #[repr(C)] 6505 pub struct KS_DVDCOPY_CHLGKEY { 6506 pub ChlgKey: [u8; 10], 6507 pub Reserved: [u8; 2], 6508 } 6509 impl ::core::marker::Copy for KS_DVDCOPY_CHLGKEY {} 6510 impl ::core::clone::Clone for KS_DVDCOPY_CHLGKEY { clone(&self) -> Self6511 fn clone(&self) -> Self { 6512 *self 6513 } 6514 } 6515 #[repr(C)] 6516 pub struct KS_DVDCOPY_DISCKEY { 6517 pub DiscKey: [u8; 2048], 6518 } 6519 impl ::core::marker::Copy for KS_DVDCOPY_DISCKEY {} 6520 impl ::core::clone::Clone for KS_DVDCOPY_DISCKEY { clone(&self) -> Self6521 fn clone(&self) -> Self { 6522 *self 6523 } 6524 } 6525 #[repr(C)] 6526 pub struct KS_DVDCOPY_REGION { 6527 pub Reserved: u8, 6528 pub RegionData: u8, 6529 pub Reserved2: [u8; 2], 6530 } 6531 impl ::core::marker::Copy for KS_DVDCOPY_REGION {} 6532 impl ::core::clone::Clone for KS_DVDCOPY_REGION { clone(&self) -> Self6533 fn clone(&self) -> Self { 6534 *self 6535 } 6536 } 6537 #[repr(C)] 6538 pub struct KS_DVDCOPY_SET_COPY_STATE { 6539 pub DVDCopyState: u32, 6540 } 6541 impl ::core::marker::Copy for KS_DVDCOPY_SET_COPY_STATE {} 6542 impl ::core::clone::Clone for KS_DVDCOPY_SET_COPY_STATE { clone(&self) -> Self6543 fn clone(&self) -> Self { 6544 *self 6545 } 6546 } 6547 #[repr(C)] 6548 pub struct KS_DVDCOPY_TITLEKEY { 6549 pub KeyFlags: u32, 6550 pub ReservedNT: [u32; 2], 6551 pub TitleKey: [u8; 6], 6552 pub Reserved: [u8; 2], 6553 } 6554 impl ::core::marker::Copy for KS_DVDCOPY_TITLEKEY {} 6555 impl ::core::clone::Clone for KS_DVDCOPY_TITLEKEY { clone(&self) -> Self6556 fn clone(&self) -> Self { 6557 *self 6558 } 6559 } 6560 pub const KS_DVD_CGMS_COPY_ONCE: u32 = 16u32; 6561 pub const KS_DVD_CGMS_COPY_PERMITTED: u32 = 0u32; 6562 pub const KS_DVD_CGMS_COPY_PROTECT_MASK: u32 = 24u32; 6563 pub const KS_DVD_CGMS_NO_COPY: u32 = 24u32; 6564 pub const KS_DVD_CGMS_RESERVED_MASK: u32 = 120u32; 6565 pub const KS_DVD_COPYRIGHTED: u32 = 64u32; 6566 pub const KS_DVD_COPYRIGHT_MASK: u32 = 64u32; 6567 pub const KS_DVD_NOT_COPYRIGHTED: u32 = 0u32; 6568 pub const KS_DVD_SECTOR_NOT_PROTECTED: u32 = 0u32; 6569 pub const KS_DVD_SECTOR_PROTECTED: u32 = 32u32; 6570 pub const KS_DVD_SECTOR_PROTECT_MASK: u32 = 32u32; 6571 #[repr(C)] 6572 pub struct KS_DVD_YCrCb { 6573 pub Reserved: u8, 6574 pub Y: u8, 6575 pub Cr: u8, 6576 pub Cb: u8, 6577 } 6578 impl ::core::marker::Copy for KS_DVD_YCrCb {} 6579 impl ::core::clone::Clone for KS_DVD_YCrCb { clone(&self) -> Self6580 fn clone(&self) -> Self { 6581 *self 6582 } 6583 } 6584 #[repr(C)] 6585 pub struct KS_DVD_YUV { 6586 pub Reserved: u8, 6587 pub Y: u8, 6588 pub V: u8, 6589 pub U: u8, 6590 } 6591 impl ::core::marker::Copy for KS_DVD_YUV {} 6592 impl ::core::clone::Clone for KS_DVD_YUV { clone(&self) -> Self6593 fn clone(&self) -> Self { 6594 *self 6595 } 6596 } 6597 #[repr(C)] 6598 #[cfg(feature = "Win32_Foundation")] 6599 pub struct KS_FRAME_INFO { 6600 pub ExtendedHeaderSize: u32, 6601 pub dwFrameFlags: u32, 6602 pub PictureNumber: i64, 6603 pub DropCount: i64, 6604 pub hDirectDraw: super::super::Foundation::HANDLE, 6605 pub hSurfaceHandle: super::super::Foundation::HANDLE, 6606 pub DirectDrawRect: super::super::Foundation::RECT, 6607 pub Anonymous1: KS_FRAME_INFO_0, 6608 pub Reserved2: u32, 6609 pub Anonymous2: KS_FRAME_INFO_1, 6610 } 6611 #[cfg(feature = "Win32_Foundation")] 6612 impl ::core::marker::Copy for KS_FRAME_INFO {} 6613 #[cfg(feature = "Win32_Foundation")] 6614 impl ::core::clone::Clone for KS_FRAME_INFO { clone(&self) -> Self6615 fn clone(&self) -> Self { 6616 *self 6617 } 6618 } 6619 #[repr(C)] 6620 #[cfg(feature = "Win32_Foundation")] 6621 pub union KS_FRAME_INFO_0 { 6622 pub lSurfacePitch: i32, 6623 pub Reserved1: u32, 6624 } 6625 #[cfg(feature = "Win32_Foundation")] 6626 impl ::core::marker::Copy for KS_FRAME_INFO_0 {} 6627 #[cfg(feature = "Win32_Foundation")] 6628 impl ::core::clone::Clone for KS_FRAME_INFO_0 { clone(&self) -> Self6629 fn clone(&self) -> Self { 6630 *self 6631 } 6632 } 6633 #[repr(C)] 6634 #[cfg(feature = "Win32_Foundation")] 6635 pub union KS_FRAME_INFO_1 { 6636 pub Anonymous: KS_FRAME_INFO_1_0, 6637 pub FrameCompletionNumber: u64, 6638 } 6639 #[cfg(feature = "Win32_Foundation")] 6640 impl ::core::marker::Copy for KS_FRAME_INFO_1 {} 6641 #[cfg(feature = "Win32_Foundation")] 6642 impl ::core::clone::Clone for KS_FRAME_INFO_1 { clone(&self) -> Self6643 fn clone(&self) -> Self { 6644 *self 6645 } 6646 } 6647 #[repr(C)] 6648 #[cfg(feature = "Win32_Foundation")] 6649 pub struct KS_FRAME_INFO_1_0 { 6650 pub Reserved3: u32, 6651 pub Reserved4: u32, 6652 } 6653 #[cfg(feature = "Win32_Foundation")] 6654 impl ::core::marker::Copy for KS_FRAME_INFO_1_0 {} 6655 #[cfg(feature = "Win32_Foundation")] 6656 impl ::core::clone::Clone for KS_FRAME_INFO_1_0 { clone(&self) -> Self6657 fn clone(&self) -> Self { 6658 *self 6659 } 6660 } 6661 #[repr(C)] 6662 pub struct KS_FRAMING_ITEM { 6663 pub MemoryType: ::windows_sys::core::GUID, 6664 pub BusType: ::windows_sys::core::GUID, 6665 pub MemoryFlags: u32, 6666 pub BusFlags: u32, 6667 pub Flags: u32, 6668 pub Frames: u32, 6669 pub Anonymous: KS_FRAMING_ITEM_0, 6670 pub MemoryTypeWeight: u32, 6671 pub PhysicalRange: KS_FRAMING_RANGE, 6672 pub FramingRange: KS_FRAMING_RANGE_WEIGHTED, 6673 } 6674 impl ::core::marker::Copy for KS_FRAMING_ITEM {} 6675 impl ::core::clone::Clone for KS_FRAMING_ITEM { clone(&self) -> Self6676 fn clone(&self) -> Self { 6677 *self 6678 } 6679 } 6680 #[repr(C)] 6681 pub union KS_FRAMING_ITEM_0 { 6682 pub FileAlignment: u32, 6683 pub FramePitch: i32, 6684 } 6685 impl ::core::marker::Copy for KS_FRAMING_ITEM_0 {} 6686 impl ::core::clone::Clone for KS_FRAMING_ITEM_0 { clone(&self) -> Self6687 fn clone(&self) -> Self { 6688 *self 6689 } 6690 } 6691 #[repr(C)] 6692 pub struct KS_FRAMING_RANGE { 6693 pub MinFrameSize: u32, 6694 pub MaxFrameSize: u32, 6695 pub Stepping: u32, 6696 } 6697 impl ::core::marker::Copy for KS_FRAMING_RANGE {} 6698 impl ::core::clone::Clone for KS_FRAMING_RANGE { clone(&self) -> Self6699 fn clone(&self) -> Self { 6700 *self 6701 } 6702 } 6703 #[repr(C)] 6704 pub struct KS_FRAMING_RANGE_WEIGHTED { 6705 pub Range: KS_FRAMING_RANGE, 6706 pub InPlaceWeight: u32, 6707 pub NotInPlaceWeight: u32, 6708 } 6709 impl ::core::marker::Copy for KS_FRAMING_RANGE_WEIGHTED {} 6710 impl ::core::clone::Clone for KS_FRAMING_RANGE_WEIGHTED { clone(&self) -> Self6711 fn clone(&self) -> Self { 6712 *self 6713 } 6714 } 6715 #[repr(C)] 6716 pub struct KS_H264VIDEOINFO { 6717 pub wWidth: u16, 6718 pub wHeight: u16, 6719 pub wSARwidth: u16, 6720 pub wSARheight: u16, 6721 pub wProfile: u16, 6722 pub bLevelIDC: u8, 6723 pub wConstrainedToolset: u16, 6724 pub bmSupportedUsages: u32, 6725 pub bmCapabilities: u16, 6726 pub bmSVCCapabilities: u32, 6727 pub bmMVCCapabilities: u32, 6728 pub dwFrameInterval: u32, 6729 pub bMaxCodecConfigDelay: u8, 6730 pub bmSupportedSliceModes: u8, 6731 pub bmSupportedSyncFrameTypes: u8, 6732 pub bResolutionScaling: u8, 6733 pub bSimulcastSupport: u8, 6734 pub bmSupportedRateControlModes: u8, 6735 pub wMaxMBperSecOneResolutionNoScalability: u16, 6736 pub wMaxMBperSecTwoResolutionsNoScalability: u16, 6737 pub wMaxMBperSecThreeResolutionsNoScalability: u16, 6738 pub wMaxMBperSecFourResolutionsNoScalability: u16, 6739 pub wMaxMBperSecOneResolutionTemporalScalability: u16, 6740 pub wMaxMBperSecTwoResolutionsTemporalScalablility: u16, 6741 pub wMaxMBperSecThreeResolutionsTemporalScalability: u16, 6742 pub wMaxMBperSecFourResolutionsTemporalScalability: u16, 6743 pub wMaxMBperSecOneResolutionTemporalQualityScalability: u16, 6744 pub wMaxMBperSecTwoResolutionsTemporalQualityScalability: u16, 6745 pub wMaxMBperSecThreeResolutionsTemporalQualityScalablity: u16, 6746 pub wMaxMBperSecFourResolutionsTemporalQualityScalability: u16, 6747 pub wMaxMBperSecOneResolutionTemporalSpatialScalability: u16, 6748 pub wMaxMBperSecTwoResolutionsTemporalSpatialScalability: u16, 6749 pub wMaxMBperSecThreeResolutionsTemporalSpatialScalablity: u16, 6750 pub wMaxMBperSecFourResolutionsTemporalSpatialScalability: u16, 6751 pub wMaxMBperSecOneResolutionFullScalability: u16, 6752 pub wMaxMBperSecTwoResolutionsFullScalability: u16, 6753 pub wMaxMBperSecThreeResolutionsFullScalability: u16, 6754 pub wMaxMBperSecFourResolutionsFullScalability: u16, 6755 } 6756 impl ::core::marker::Copy for KS_H264VIDEOINFO {} 6757 impl ::core::clone::Clone for KS_H264VIDEOINFO { clone(&self) -> Self6758 fn clone(&self) -> Self { 6759 *self 6760 } 6761 } 6762 pub const KS_INTERLACE_1FieldPerSample: u32 = 2u32; 6763 pub const KS_INTERLACE_DisplayModeBobOnly: u32 = 0u32; 6764 pub const KS_INTERLACE_DisplayModeBobOrWeave: u32 = 128u32; 6765 pub const KS_INTERLACE_DisplayModeMask: u32 = 192u32; 6766 pub const KS_INTERLACE_DisplayModeWeaveOnly: u32 = 64u32; 6767 pub const KS_INTERLACE_Field1First: u32 = 4u32; 6768 pub const KS_INTERLACE_FieldPatBothIrregular: u32 = 48u32; 6769 pub const KS_INTERLACE_FieldPatBothRegular: u32 = 32u32; 6770 pub const KS_INTERLACE_FieldPatField1Only: u32 = 0u32; 6771 pub const KS_INTERLACE_FieldPatField2Only: u32 = 16u32; 6772 pub const KS_INTERLACE_FieldPatternMask: u32 = 48u32; 6773 pub const KS_INTERLACE_IsInterlaced: u32 = 1u32; 6774 pub const KS_INTERLACE_UNUSED: u32 = 8u32; 6775 pub type KS_LogicalMemoryType = i32; 6776 pub const KS_MemoryTypeDontCare: KS_LogicalMemoryType = 0i32; 6777 pub const KS_MemoryTypeKernelPaged: KS_LogicalMemoryType = 1i32; 6778 pub const KS_MemoryTypeKernelNonPaged: KS_LogicalMemoryType = 2i32; 6779 pub const KS_MemoryTypeDeviceHostMapped: KS_LogicalMemoryType = 3i32; 6780 pub const KS_MemoryTypeDeviceSpecific: KS_LogicalMemoryType = 4i32; 6781 pub const KS_MemoryTypeUser: KS_LogicalMemoryType = 5i32; 6782 pub const KS_MemoryTypeAnyHost: KS_LogicalMemoryType = 6i32; 6783 pub const KS_MAX_SIZE_MPEG1_SEQUENCE_INFO: u32 = 140u32; 6784 #[repr(C)] 6785 pub struct KS_MPEAUDIOINFO { 6786 pub dwFlags: u32, 6787 pub dwReserved1: u32, 6788 pub dwReserved2: u32, 6789 pub dwReserved3: u32, 6790 } 6791 impl ::core::marker::Copy for KS_MPEAUDIOINFO {} 6792 impl ::core::clone::Clone for KS_MPEAUDIOINFO { clone(&self) -> Self6793 fn clone(&self) -> Self { 6794 *self 6795 } 6796 } 6797 #[repr(C)] 6798 #[cfg(feature = "Win32_Foundation")] 6799 pub struct KS_MPEG1VIDEOINFO { 6800 pub hdr: KS_VIDEOINFOHEADER, 6801 pub dwStartTimeCode: u32, 6802 pub cbSequenceHeader: u32, 6803 pub bSequenceHeader: [u8; 1], 6804 } 6805 #[cfg(feature = "Win32_Foundation")] 6806 impl ::core::marker::Copy for KS_MPEG1VIDEOINFO {} 6807 #[cfg(feature = "Win32_Foundation")] 6808 impl ::core::clone::Clone for KS_MPEG1VIDEOINFO { clone(&self) -> Self6809 fn clone(&self) -> Self { 6810 *self 6811 } 6812 } 6813 pub type KS_MPEG2Level = i32; 6814 pub const KS_MPEG2Level_Low: KS_MPEG2Level = 0i32; 6815 pub const KS_MPEG2Level_Main: KS_MPEG2Level = 1i32; 6816 pub const KS_MPEG2Level_High1440: KS_MPEG2Level = 2i32; 6817 pub const KS_MPEG2Level_High: KS_MPEG2Level = 3i32; 6818 pub type KS_MPEG2Profile = i32; 6819 pub const KS_MPEG2Profile_Simple: KS_MPEG2Profile = 0i32; 6820 pub const KS_MPEG2Profile_Main: KS_MPEG2Profile = 1i32; 6821 pub const KS_MPEG2Profile_SNRScalable: KS_MPEG2Profile = 2i32; 6822 pub const KS_MPEG2Profile_SpatiallyScalable: KS_MPEG2Profile = 3i32; 6823 pub const KS_MPEG2Profile_High: KS_MPEG2Profile = 4i32; 6824 pub const KS_MPEG2_27MhzTimebase: u32 = 256u32; 6825 pub const KS_MPEG2_DSS_UserData: u32 = 64u32; 6826 pub const KS_MPEG2_DVB_UserData: u32 = 128u32; 6827 pub const KS_MPEG2_DVDLine21Field1: u32 = 2u32; 6828 pub const KS_MPEG2_DVDLine21Field2: u32 = 4u32; 6829 pub const KS_MPEG2_DoPanScan: u32 = 1u32; 6830 pub const KS_MPEG2_FilmCameraMode: u32 = 16u32; 6831 pub const KS_MPEG2_LetterboxAnalogOut: u32 = 32u32; 6832 pub const KS_MPEG2_SourceIsLetterboxed: u32 = 8u32; 6833 pub const KS_MPEG2_WidescreenAnalogOut: u32 = 512u32; 6834 pub const KS_MPEGAUDIOINFO_27MhzTimebase: u32 = 1u32; 6835 #[repr(C)] 6836 #[cfg(feature = "Win32_Foundation")] 6837 pub struct KS_MPEGVIDEOINFO2 { 6838 pub hdr: KS_VIDEOINFOHEADER2, 6839 pub dwStartTimeCode: u32, 6840 pub cbSequenceHeader: u32, 6841 pub dwProfile: u32, 6842 pub dwLevel: u32, 6843 pub dwFlags: u32, 6844 pub bSequenceHeader: [u32; 1], 6845 } 6846 #[cfg(feature = "Win32_Foundation")] 6847 impl ::core::marker::Copy for KS_MPEGVIDEOINFO2 {} 6848 #[cfg(feature = "Win32_Foundation")] 6849 impl ::core::clone::Clone for KS_MPEGVIDEOINFO2 { clone(&self) -> Self6850 fn clone(&self) -> Self { 6851 *self 6852 } 6853 } 6854 pub const KS_NABTS_GROUPID_LOCAL_CABLE_SYSTEM_ADVERTISER_BASE: u32 = 2224u32; 6855 pub const KS_NABTS_GROUPID_LOCAL_CABLE_SYSTEM_CONTENT_BASE: u32 = 2208u32; 6856 pub const KS_NABTS_GROUPID_MICROSOFT_RESERVED_TEST_DATA_BASE: u32 = 2288u32; 6857 pub const KS_NABTS_GROUPID_NETWORK_WIDE_ADVERTISER_BASE: u32 = 2160u32; 6858 pub const KS_NABTS_GROUPID_NETWORK_WIDE_CONTENT_BASE: u32 = 2144u32; 6859 pub const KS_NABTS_GROUPID_ORIGINAL_CONTENT_ADVERTISER_BASE: u32 = 2064u32; 6860 pub const KS_NABTS_GROUPID_ORIGINAL_CONTENT_BASE: u32 = 2048u32; 6861 pub const KS_NABTS_GROUPID_PRODUCTION_COMPANY_ADVERTISER_BASE: u32 = 2096u32; 6862 pub const KS_NABTS_GROUPID_PRODUCTION_COMPANY_CONTENT_BASE: u32 = 2080u32; 6863 pub const KS_NABTS_GROUPID_SYNDICATED_SHOW_ADVERTISER_BASE: u32 = 2128u32; 6864 pub const KS_NABTS_GROUPID_SYNDICATED_SHOW_CONTENT_BASE: u32 = 2112u32; 6865 pub const KS_NABTS_GROUPID_TELEVISION_STATION_ADVERTISER_BASE: u32 = 2192u32; 6866 pub const KS_NABTS_GROUPID_TELEVISION_STATION_CONTENT_BASE: u32 = 2176u32; 6867 pub type KS_PhysicalConnectorType = i32; 6868 pub const KS_PhysConn_Video_Tuner: KS_PhysicalConnectorType = 1i32; 6869 pub const KS_PhysConn_Video_Composite: KS_PhysicalConnectorType = 2i32; 6870 pub const KS_PhysConn_Video_SVideo: KS_PhysicalConnectorType = 3i32; 6871 pub const KS_PhysConn_Video_RGB: KS_PhysicalConnectorType = 4i32; 6872 pub const KS_PhysConn_Video_YRYBY: KS_PhysicalConnectorType = 5i32; 6873 pub const KS_PhysConn_Video_SerialDigital: KS_PhysicalConnectorType = 6i32; 6874 pub const KS_PhysConn_Video_ParallelDigital: KS_PhysicalConnectorType = 7i32; 6875 pub const KS_PhysConn_Video_SCSI: KS_PhysicalConnectorType = 8i32; 6876 pub const KS_PhysConn_Video_AUX: KS_PhysicalConnectorType = 9i32; 6877 pub const KS_PhysConn_Video_1394: KS_PhysicalConnectorType = 10i32; 6878 pub const KS_PhysConn_Video_USB: KS_PhysicalConnectorType = 11i32; 6879 pub const KS_PhysConn_Video_VideoDecoder: KS_PhysicalConnectorType = 12i32; 6880 pub const KS_PhysConn_Video_VideoEncoder: KS_PhysicalConnectorType = 13i32; 6881 pub const KS_PhysConn_Video_SCART: KS_PhysicalConnectorType = 14i32; 6882 pub const KS_PhysConn_Audio_Tuner: KS_PhysicalConnectorType = 4096i32; 6883 pub const KS_PhysConn_Audio_Line: KS_PhysicalConnectorType = 4097i32; 6884 pub const KS_PhysConn_Audio_Mic: KS_PhysicalConnectorType = 4098i32; 6885 pub const KS_PhysConn_Audio_AESDigital: KS_PhysicalConnectorType = 4099i32; 6886 pub const KS_PhysConn_Audio_SPDIFDigital: KS_PhysicalConnectorType = 4100i32; 6887 pub const KS_PhysConn_Audio_SCSI: KS_PhysicalConnectorType = 4101i32; 6888 pub const KS_PhysConn_Audio_AUX: KS_PhysicalConnectorType = 4102i32; 6889 pub const KS_PhysConn_Audio_1394: KS_PhysicalConnectorType = 4103i32; 6890 pub const KS_PhysConn_Audio_USB: KS_PhysicalConnectorType = 4104i32; 6891 pub const KS_PhysConn_Audio_AudioDecoder: KS_PhysicalConnectorType = 4105i32; 6892 #[repr(C)] 6893 pub struct KS_RGBQUAD { 6894 pub rgbBlue: u8, 6895 pub rgbGreen: u8, 6896 pub rgbRed: u8, 6897 pub rgbReserved: u8, 6898 } 6899 impl ::core::marker::Copy for KS_RGBQUAD {} 6900 impl ::core::clone::Clone for KS_RGBQUAD { clone(&self) -> Self6901 fn clone(&self) -> Self { 6902 *self 6903 } 6904 } 6905 pub const KS_SECURE_CAMERA_SCENARIO_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2924739694, data2: 36233, data3: 17544, data4: [157, 46, 77, 0, 135, 49, 197, 253] }; 6906 pub type KS_SEEKING_CAPABILITIES = i32; 6907 pub const KS_SEEKING_CanSeekAbsolute: KS_SEEKING_CAPABILITIES = 1i32; 6908 pub const KS_SEEKING_CanSeekForwards: KS_SEEKING_CAPABILITIES = 2i32; 6909 pub const KS_SEEKING_CanSeekBackwards: KS_SEEKING_CAPABILITIES = 4i32; 6910 pub const KS_SEEKING_CanGetCurrentPos: KS_SEEKING_CAPABILITIES = 8i32; 6911 pub const KS_SEEKING_CanGetStopPos: KS_SEEKING_CAPABILITIES = 16i32; 6912 pub const KS_SEEKING_CanGetDuration: KS_SEEKING_CAPABILITIES = 32i32; 6913 pub const KS_SEEKING_CanPlayBackwards: KS_SEEKING_CAPABILITIES = 64i32; 6914 pub type KS_SEEKING_FLAGS = i32; 6915 pub const KS_SEEKING_NoPositioning: KS_SEEKING_FLAGS = 0i32; 6916 pub const KS_SEEKING_AbsolutePositioning: KS_SEEKING_FLAGS = 1i32; 6917 pub const KS_SEEKING_RelativePositioning: KS_SEEKING_FLAGS = 2i32; 6918 pub const KS_SEEKING_IncrementalPositioning: KS_SEEKING_FLAGS = 3i32; 6919 pub const KS_SEEKING_PositioningBitsMask: KS_SEEKING_FLAGS = 3i32; 6920 pub const KS_SEEKING_SeekToKeyFrame: KS_SEEKING_FLAGS = 4i32; 6921 pub const KS_SEEKING_ReturnTime: KS_SEEKING_FLAGS = 8i32; 6922 #[repr(C)] 6923 pub struct KS_TRUECOLORINFO { 6924 pub dwBitMasks: [u32; 3], 6925 pub bmiColors: [KS_RGBQUAD; 256], 6926 } 6927 impl ::core::marker::Copy for KS_TRUECOLORINFO {} 6928 impl ::core::clone::Clone for KS_TRUECOLORINFO { clone(&self) -> Self6929 fn clone(&self) -> Self { 6930 *self 6931 } 6932 } 6933 pub type KS_TUNER_STRATEGY = i32; 6934 pub const KS_TUNER_STRATEGY_PLL: KS_TUNER_STRATEGY = 1i32; 6935 pub const KS_TUNER_STRATEGY_SIGNAL_STRENGTH: KS_TUNER_STRATEGY = 2i32; 6936 pub const KS_TUNER_STRATEGY_DRIVER_TUNES: KS_TUNER_STRATEGY = 4i32; 6937 pub type KS_TUNER_TUNING_FLAGS = i32; 6938 pub const KS_TUNER_TUNING_EXACT: KS_TUNER_TUNING_FLAGS = 1i32; 6939 pub const KS_TUNER_TUNING_FINE: KS_TUNER_TUNING_FLAGS = 2i32; 6940 pub const KS_TUNER_TUNING_COARSE: KS_TUNER_TUNING_FLAGS = 3i32; 6941 pub const KS_TVAUDIO_MODE_LANG_A: u32 = 16u32; 6942 pub const KS_TVAUDIO_MODE_LANG_B: u32 = 32u32; 6943 pub const KS_TVAUDIO_MODE_LANG_C: u32 = 64u32; 6944 pub const KS_TVAUDIO_MODE_MONO: u32 = 1u32; 6945 pub const KS_TVAUDIO_MODE_STEREO: u32 = 2u32; 6946 pub const KS_TVAUDIO_PRESET_LANG_A: u32 = 4096u32; 6947 pub const KS_TVAUDIO_PRESET_LANG_B: u32 = 8192u32; 6948 pub const KS_TVAUDIO_PRESET_LANG_C: u32 = 16384u32; 6949 pub const KS_TVAUDIO_PRESET_STEREO: u32 = 512u32; 6950 pub const KS_TVTUNER_CHANGE_BEGIN_TUNE: i32 = 1i32; 6951 pub const KS_TVTUNER_CHANGE_END_TUNE: i32 = 2i32; 6952 #[repr(C)] 6953 pub struct KS_TVTUNER_CHANGE_INFO { 6954 pub dwFlags: u32, 6955 pub dwCountryCode: u32, 6956 pub dwAnalogVideoStandard: u32, 6957 pub dwChannel: u32, 6958 } 6959 impl ::core::marker::Copy for KS_TVTUNER_CHANGE_INFO {} 6960 impl ::core::clone::Clone for KS_TVTUNER_CHANGE_INFO { clone(&self) -> Self6961 fn clone(&self) -> Self { 6962 *self 6963 } 6964 } 6965 pub const KS_VBICAP_PROTECTION_MV_DETECTED: i32 = 4i32; 6966 pub const KS_VBICAP_PROTECTION_MV_HARDWARE: i32 = 2i32; 6967 pub const KS_VBICAP_PROTECTION_MV_PRESENT: i32 = 1i32; 6968 pub const KS_VBIDATARATE_CC: i32 = 503493i32; 6969 pub const KS_VBIDATARATE_NABTS: i32 = 5727272i32; 6970 #[repr(C)] 6971 pub struct KS_VBIINFOHEADER { 6972 pub StartLine: u32, 6973 pub EndLine: u32, 6974 pub SamplingFrequency: u32, 6975 pub MinLineStartTime: u32, 6976 pub MaxLineStartTime: u32, 6977 pub ActualLineStartTime: u32, 6978 pub ActualLineEndTime: u32, 6979 pub VideoStandard: u32, 6980 pub SamplesPerLine: u32, 6981 pub StrideInBytes: u32, 6982 pub BufferSize: u32, 6983 } 6984 impl ::core::marker::Copy for KS_VBIINFOHEADER {} 6985 impl ::core::clone::Clone for KS_VBIINFOHEADER { clone(&self) -> Self6986 fn clone(&self) -> Self { 6987 *self 6988 } 6989 } 6990 pub const KS_VBI_FLAG_FIELD1: i32 = 1i32; 6991 pub const KS_VBI_FLAG_FIELD2: i32 = 2i32; 6992 pub const KS_VBI_FLAG_FRAME: i32 = 0i32; 6993 pub const KS_VBI_FLAG_MV_DETECTED: i32 = 1024i32; 6994 pub const KS_VBI_FLAG_MV_HARDWARE: i32 = 512i32; 6995 pub const KS_VBI_FLAG_MV_PRESENT: i32 = 256i32; 6996 pub const KS_VBI_FLAG_TVTUNER_CHANGE: i32 = 16i32; 6997 pub const KS_VBI_FLAG_VBIINFOHEADER_CHANGE: i32 = 32i32; 6998 #[repr(C)] 6999 pub struct KS_VBI_FRAME_INFO { 7000 pub ExtendedHeaderSize: u32, 7001 pub dwFrameFlags: u32, 7002 pub PictureNumber: i64, 7003 pub DropCount: i64, 7004 pub dwSamplingFrequency: u32, 7005 pub TvTunerChangeInfo: KS_TVTUNER_CHANGE_INFO, 7006 pub VBIInfoHeader: KS_VBIINFOHEADER, 7007 } 7008 impl ::core::marker::Copy for KS_VBI_FRAME_INFO {} 7009 impl ::core::clone::Clone for KS_VBI_FRAME_INFO { clone(&self) -> Self7010 fn clone(&self) -> Self { 7011 *self 7012 } 7013 } 7014 pub type KS_VIDEODECODER_FLAGS = i32; 7015 pub const KS_VIDEODECODER_FLAGS_CAN_DISABLE_OUTPUT: KS_VIDEODECODER_FLAGS = 1i32; 7016 pub const KS_VIDEODECODER_FLAGS_CAN_USE_VCR_LOCKING: KS_VIDEODECODER_FLAGS = 2i32; 7017 pub const KS_VIDEODECODER_FLAGS_CAN_INDICATE_LOCKED: KS_VIDEODECODER_FLAGS = 4i32; 7018 #[repr(C)] 7019 #[cfg(feature = "Win32_Foundation")] 7020 pub struct KS_VIDEOINFO { 7021 pub rcSource: super::super::Foundation::RECT, 7022 pub rcTarget: super::super::Foundation::RECT, 7023 pub dwBitRate: u32, 7024 pub dwBitErrorRate: u32, 7025 pub AvgTimePerFrame: i64, 7026 pub bmiHeader: KS_BITMAPINFOHEADER, 7027 pub Anonymous: KS_VIDEOINFO_0, 7028 } 7029 #[cfg(feature = "Win32_Foundation")] 7030 impl ::core::marker::Copy for KS_VIDEOINFO {} 7031 #[cfg(feature = "Win32_Foundation")] 7032 impl ::core::clone::Clone for KS_VIDEOINFO { clone(&self) -> Self7033 fn clone(&self) -> Self { 7034 *self 7035 } 7036 } 7037 #[repr(C)] 7038 #[cfg(feature = "Win32_Foundation")] 7039 pub union KS_VIDEOINFO_0 { 7040 pub bmiColors: [KS_RGBQUAD; 256], 7041 pub dwBitMasks: [u32; 3], 7042 pub TrueColorInfo: KS_TRUECOLORINFO, 7043 } 7044 #[cfg(feature = "Win32_Foundation")] 7045 impl ::core::marker::Copy for KS_VIDEOINFO_0 {} 7046 #[cfg(feature = "Win32_Foundation")] 7047 impl ::core::clone::Clone for KS_VIDEOINFO_0 { clone(&self) -> Self7048 fn clone(&self) -> Self { 7049 *self 7050 } 7051 } 7052 #[repr(C)] 7053 #[cfg(feature = "Win32_Foundation")] 7054 pub struct KS_VIDEOINFOHEADER { 7055 pub rcSource: super::super::Foundation::RECT, 7056 pub rcTarget: super::super::Foundation::RECT, 7057 pub dwBitRate: u32, 7058 pub dwBitErrorRate: u32, 7059 pub AvgTimePerFrame: i64, 7060 pub bmiHeader: KS_BITMAPINFOHEADER, 7061 } 7062 #[cfg(feature = "Win32_Foundation")] 7063 impl ::core::marker::Copy for KS_VIDEOINFOHEADER {} 7064 #[cfg(feature = "Win32_Foundation")] 7065 impl ::core::clone::Clone for KS_VIDEOINFOHEADER { clone(&self) -> Self7066 fn clone(&self) -> Self { 7067 *self 7068 } 7069 } 7070 #[repr(C)] 7071 #[cfg(feature = "Win32_Foundation")] 7072 pub struct KS_VIDEOINFOHEADER2 { 7073 pub rcSource: super::super::Foundation::RECT, 7074 pub rcTarget: super::super::Foundation::RECT, 7075 pub dwBitRate: u32, 7076 pub dwBitErrorRate: u32, 7077 pub AvgTimePerFrame: i64, 7078 pub dwInterlaceFlags: u32, 7079 pub dwCopyProtectFlags: u32, 7080 pub dwPictAspectRatioX: u32, 7081 pub dwPictAspectRatioY: u32, 7082 pub Anonymous: KS_VIDEOINFOHEADER2_0, 7083 pub dwReserved2: u32, 7084 pub bmiHeader: KS_BITMAPINFOHEADER, 7085 } 7086 #[cfg(feature = "Win32_Foundation")] 7087 impl ::core::marker::Copy for KS_VIDEOINFOHEADER2 {} 7088 #[cfg(feature = "Win32_Foundation")] 7089 impl ::core::clone::Clone for KS_VIDEOINFOHEADER2 { clone(&self) -> Self7090 fn clone(&self) -> Self { 7091 *self 7092 } 7093 } 7094 #[repr(C)] 7095 #[cfg(feature = "Win32_Foundation")] 7096 pub union KS_VIDEOINFOHEADER2_0 { 7097 pub dwControlFlags: u32, 7098 pub dwReserved1: u32, 7099 } 7100 #[cfg(feature = "Win32_Foundation")] 7101 impl ::core::marker::Copy for KS_VIDEOINFOHEADER2_0 {} 7102 #[cfg(feature = "Win32_Foundation")] 7103 impl ::core::clone::Clone for KS_VIDEOINFOHEADER2_0 { clone(&self) -> Self7104 fn clone(&self) -> Self { 7105 *self 7106 } 7107 } 7108 pub const KS_VIDEOSTREAM_CAPTURE: u32 = 2u32; 7109 pub const KS_VIDEOSTREAM_CC: u32 = 256u32; 7110 pub const KS_VIDEOSTREAM_EDS: u32 = 512u32; 7111 pub const KS_VIDEOSTREAM_IS_VPE: u32 = 32768u32; 7112 pub const KS_VIDEOSTREAM_NABTS: u32 = 32u32; 7113 pub const KS_VIDEOSTREAM_PREVIEW: u32 = 1u32; 7114 pub const KS_VIDEOSTREAM_STILL: u32 = 4096u32; 7115 pub const KS_VIDEOSTREAM_TELETEXT: u32 = 1024u32; 7116 pub const KS_VIDEOSTREAM_VBI: u32 = 16u32; 7117 pub const KS_VIDEO_ALLOC_VPE_AGP: u32 = 4u32; 7118 pub const KS_VIDEO_ALLOC_VPE_DISPLAY: u32 = 2u32; 7119 pub const KS_VIDEO_ALLOC_VPE_SYSTEM: u32 = 1u32; 7120 pub const KS_VIDEO_FLAG_B_FRAME: i32 = 32i32; 7121 pub const KS_VIDEO_FLAG_FIELD1: i32 = 1i32; 7122 pub const KS_VIDEO_FLAG_FIELD1FIRST: i32 = 4i32; 7123 pub const KS_VIDEO_FLAG_FIELD2: i32 = 2i32; 7124 pub const KS_VIDEO_FLAG_FIELD_MASK: i32 = 3i32; 7125 pub const KS_VIDEO_FLAG_FRAME: i32 = 0i32; 7126 pub const KS_VIDEO_FLAG_IPB_MASK: i32 = 48i32; 7127 pub const KS_VIDEO_FLAG_I_FRAME: i32 = 0i32; 7128 pub const KS_VIDEO_FLAG_P_FRAME: i32 = 16i32; 7129 pub const KS_VIDEO_FLAG_REPEAT_FIELD: i32 = 64i32; 7130 pub const KS_VIDEO_FLAG_WEAVE: i32 = 8i32; 7131 #[repr(C)] 7132 #[cfg(feature = "Win32_Foundation")] 7133 pub struct KS_VIDEO_STREAM_CONFIG_CAPS { 7134 pub guid: ::windows_sys::core::GUID, 7135 pub VideoStandard: u32, 7136 pub InputSize: super::super::Foundation::SIZE, 7137 pub MinCroppingSize: super::super::Foundation::SIZE, 7138 pub MaxCroppingSize: super::super::Foundation::SIZE, 7139 pub CropGranularityX: i32, 7140 pub CropGranularityY: i32, 7141 pub CropAlignX: i32, 7142 pub CropAlignY: i32, 7143 pub MinOutputSize: super::super::Foundation::SIZE, 7144 pub MaxOutputSize: super::super::Foundation::SIZE, 7145 pub OutputGranularityX: i32, 7146 pub OutputGranularityY: i32, 7147 pub StretchTapsX: i32, 7148 pub StretchTapsY: i32, 7149 pub ShrinkTapsX: i32, 7150 pub ShrinkTapsY: i32, 7151 pub MinFrameInterval: i64, 7152 pub MaxFrameInterval: i64, 7153 pub MinBitsPerSecond: i32, 7154 pub MaxBitsPerSecond: i32, 7155 } 7156 #[cfg(feature = "Win32_Foundation")] 7157 impl ::core::marker::Copy for KS_VIDEO_STREAM_CONFIG_CAPS {} 7158 #[cfg(feature = "Win32_Foundation")] 7159 impl ::core::clone::Clone for KS_VIDEO_STREAM_CONFIG_CAPS { clone(&self) -> Self7160 fn clone(&self) -> Self { 7161 *self 7162 } 7163 } 7164 pub type KS_VideoControlFlags = i32; 7165 pub const KS_VideoControlFlag_FlipHorizontal: KS_VideoControlFlags = 1i32; 7166 pub const KS_VideoControlFlag_FlipVertical: KS_VideoControlFlags = 2i32; 7167 pub const KS_Obsolete_VideoControlFlag_ExternalTriggerEnable: KS_VideoControlFlags = 16i32; 7168 pub const KS_Obsolete_VideoControlFlag_Trigger: KS_VideoControlFlags = 32i32; 7169 pub const KS_VideoControlFlag_ExternalTriggerEnable: KS_VideoControlFlags = 4i32; 7170 pub const KS_VideoControlFlag_Trigger: KS_VideoControlFlags = 8i32; 7171 pub const KS_VideoControlFlag_IndependentImagePin: KS_VideoControlFlags = 64i32; 7172 pub const KS_VideoControlFlag_StillCapturePreviewFrame: KS_VideoControlFlags = 128i32; 7173 pub const KS_VideoControlFlag_StartPhotoSequenceCapture: KS_VideoControlFlags = 256i32; 7174 pub const KS_VideoControlFlag_StopPhotoSequenceCapture: KS_VideoControlFlags = 512i32; 7175 pub type KS_VideoStreamingHints = i32; 7176 pub const KS_StreamingHint_FrameInterval: KS_VideoStreamingHints = 256i32; 7177 pub const KS_StreamingHint_KeyFrameRate: KS_VideoStreamingHints = 512i32; 7178 pub const KS_StreamingHint_PFrameRate: KS_VideoStreamingHints = 1024i32; 7179 pub const KS_StreamingHint_CompQuality: KS_VideoStreamingHints = 2048i32; 7180 pub const KS_StreamingHint_CompWindowSize: KS_VideoStreamingHints = 4096i32; 7181 pub const KS_iBLUE: u32 = 2u32; 7182 pub const KS_iEGA_COLORS: u32 = 16u32; 7183 pub const KS_iGREEN: u32 = 1u32; 7184 pub const KS_iMASK_COLORS: u32 = 3u32; 7185 pub const KS_iMAXBITS: u32 = 8u32; 7186 pub const KS_iPALETTE: u32 = 8u32; 7187 pub const KS_iPALETTE_COLORS: u32 = 256u32; 7188 pub const KS_iRED: u32 = 0u32; 7189 pub const KS_iTRUECOLOR: u32 = 16u32; 7190 #[repr(C)] 7191 #[cfg(feature = "Win32_Foundation")] 7192 pub struct LOOPEDSTREAMING_POSITION_EVENT_DATA { 7193 pub KsEventData: KSEVENTDATA, 7194 pub Position: u64, 7195 } 7196 #[cfg(feature = "Win32_Foundation")] 7197 impl ::core::marker::Copy for LOOPEDSTREAMING_POSITION_EVENT_DATA {} 7198 #[cfg(feature = "Win32_Foundation")] 7199 impl ::core::clone::Clone for LOOPEDSTREAMING_POSITION_EVENT_DATA { clone(&self) -> Self7200 fn clone(&self) -> Self { 7201 *self 7202 } 7203 } 7204 pub const MAX_NABTS_VBI_LINES_PER_FIELD: u32 = 11u32; 7205 pub const MAX_RESOURCEGROUPID_LENGTH: u32 = 256u32; 7206 pub const MAX_SINK_DESCRIPTION_NAME_LENGTH: u32 = 32u32; 7207 pub const MAX_WST_VBI_LINES_PER_FIELD: u32 = 17u32; 7208 #[repr(C)] 7209 #[cfg(feature = "Win32_Foundation")] 7210 pub struct MEDIUM_INFO { 7211 pub MediaPresent: super::super::Foundation::BOOL, 7212 pub MediaType: u32, 7213 pub RecordInhibit: super::super::Foundation::BOOL, 7214 } 7215 #[cfg(feature = "Win32_Foundation")] 7216 impl ::core::marker::Copy for MEDIUM_INFO {} 7217 #[cfg(feature = "Win32_Foundation")] 7218 impl ::core::clone::Clone for MEDIUM_INFO { clone(&self) -> Self7219 fn clone(&self) -> Self { 7220 *self 7221 } 7222 } 7223 #[repr(C)] 7224 pub union MF_MDL_SHARED_PAYLOAD_KEY { 7225 pub combined: MF_MDL_SHARED_PAYLOAD_KEY_0, 7226 pub GMDLHandle: ::windows_sys::core::GUID, 7227 } 7228 impl ::core::marker::Copy for MF_MDL_SHARED_PAYLOAD_KEY {} 7229 impl ::core::clone::Clone for MF_MDL_SHARED_PAYLOAD_KEY { clone(&self) -> Self7230 fn clone(&self) -> Self { 7231 *self 7232 } 7233 } 7234 #[repr(C)] 7235 pub struct MF_MDL_SHARED_PAYLOAD_KEY_0 { 7236 pub pHandle: u32, 7237 pub fHandle: u32, 7238 pub uPayload: u64, 7239 } 7240 impl ::core::marker::Copy for MF_MDL_SHARED_PAYLOAD_KEY_0 {} 7241 impl ::core::clone::Clone for MF_MDL_SHARED_PAYLOAD_KEY_0 { clone(&self) -> Self7242 fn clone(&self) -> Self { 7243 *self 7244 } 7245 } 7246 pub const MIN_DEV_VER_FOR_FLAGS: u32 = 272u32; 7247 pub const MIN_DEV_VER_FOR_QI: u32 = 256u32; 7248 #[repr(C)] 7249 pub struct NABTSFEC_BUFFER { 7250 pub dataSize: u32, 7251 pub groupID: u16, 7252 pub Reserved: u16, 7253 pub data: [u8; 448], 7254 } 7255 impl ::core::marker::Copy for NABTSFEC_BUFFER {} 7256 impl ::core::clone::Clone for NABTSFEC_BUFFER { clone(&self) -> Self7257 fn clone(&self) -> Self { 7258 *self 7259 } 7260 } 7261 #[repr(C, packed(1))] 7262 pub struct NABTS_BUFFER { 7263 pub ScanlinesRequested: VBICODECFILTERING_SCANLINES, 7264 pub PictureNumber: i64, 7265 pub NabtsLines: [NABTS_BUFFER_LINE; 11], 7266 } 7267 impl ::core::marker::Copy for NABTS_BUFFER {} 7268 impl ::core::clone::Clone for NABTS_BUFFER { clone(&self) -> Self7269 fn clone(&self) -> Self { 7270 *self 7271 } 7272 } 7273 #[repr(C)] 7274 pub struct NABTS_BUFFER_LINE { 7275 pub Confidence: u8, 7276 pub Bytes: [u8; 36], 7277 } 7278 impl ::core::marker::Copy for NABTS_BUFFER_LINE {} 7279 impl ::core::clone::Clone for NABTS_BUFFER_LINE { clone(&self) -> Self7280 fn clone(&self) -> Self { 7281 *self 7282 } 7283 } 7284 pub const NABTS_BUFFER_PICTURENUMBER_SUPPORT: u32 = 1u32; 7285 pub const NABTS_BYTES_PER_LINE: u32 = 36u32; 7286 pub const NABTS_LINES_PER_BUNDLE: u32 = 16u32; 7287 pub const NABTS_PAYLOAD_PER_LINE: u32 = 28u32; 7288 pub const NANOSECONDS: u32 = 10000000u32; 7289 #[repr(C)] 7290 pub struct OPTIMAL_WEIGHT_TOTALS { 7291 pub MinTotalNominator: i64, 7292 pub MaxTotalNominator: i64, 7293 pub TotalDenominator: i64, 7294 } 7295 impl ::core::marker::Copy for OPTIMAL_WEIGHT_TOTALS {} 7296 impl ::core::clone::Clone for OPTIMAL_WEIGHT_TOTALS { clone(&self) -> Self7297 fn clone(&self) -> Self { 7298 *self 7299 } 7300 } 7301 pub const PINNAME_DISPLAYPORT_OUT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 570143529, data2: 6730, data3: 18650, data4: [160, 118, 35, 24, 163, 197, 155, 38] }; 7302 pub const PINNAME_HDMI_OUT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 947649539, data2: 59375, data3: 18689, data4: [134, 224, 53, 183, 195, 43, 0, 239] }; 7303 pub const PINNAME_IMAGE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 950062488, data2: 54427, data3: 19688, data4: [180, 138, 52, 70, 103, 161, 120, 48] }; 7304 pub const PINNAME_SPDIF_IN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 366776357, data2: 8877, data3: 16819, data4: [136, 117, 244, 206, 176, 41, 158, 32] }; 7305 pub const PINNAME_SPDIF_OUT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 7306 data1: 975586433, 7307 data2: 58668, 7308 data3: 19330, 7309 data4: [142, 122, 200, 226, 249, 29, 195, 128], 7310 }; 7311 pub const PINNAME_VIDEO_ANALOGVIDEOIN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176131, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7312 pub const PINNAME_VIDEO_CAPTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176129, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7313 pub const PINNAME_VIDEO_CC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176137, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7314 pub const PINNAME_VIDEO_CC_CAPTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 447578209, data2: 301, data3: 4562, data4: [180, 177, 0, 160, 209, 2, 207, 190] }; 7315 pub const PINNAME_VIDEO_EDS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176135, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7316 pub const PINNAME_VIDEO_NABTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176134, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7317 pub const PINNAME_VIDEO_NABTS_CAPTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 695219808, data2: 18826, data3: 4562, data4: [180, 177, 0, 160, 209, 2, 207, 190] }; 7318 pub const PINNAME_VIDEO_PREVIEW: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176130, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7319 pub const PINNAME_VIDEO_STILL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176138, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7320 pub const PINNAME_VIDEO_TELETEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176136, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7321 pub const PINNAME_VIDEO_TIMECODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176139, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7322 pub const PINNAME_VIDEO_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176132, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7323 pub const PINNAME_VIDEO_VIDEOPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176133, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7324 pub const PINNAME_VIDEO_VIDEOPORT_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176140, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; 7325 pub type PIPE_ALLOCATOR_PLACE = i32; 7326 pub const Pipe_Allocator_None: PIPE_ALLOCATOR_PLACE = 0i32; 7327 pub const Pipe_Allocator_FirstPin: PIPE_ALLOCATOR_PLACE = 1i32; 7328 pub const Pipe_Allocator_LastPin: PIPE_ALLOCATOR_PLACE = 2i32; 7329 pub const Pipe_Allocator_MiddlePin: PIPE_ALLOCATOR_PLACE = 3i32; 7330 #[repr(C)] 7331 pub struct PIPE_DIMENSIONS { 7332 pub AllocatorPin: KS_COMPRESSION, 7333 pub MaxExpansionPin: KS_COMPRESSION, 7334 pub EndPin: KS_COMPRESSION, 7335 } 7336 impl ::core::marker::Copy for PIPE_DIMENSIONS {} 7337 impl ::core::clone::Clone for PIPE_DIMENSIONS { clone(&self) -> Self7338 fn clone(&self) -> Self { 7339 *self 7340 } 7341 } 7342 pub type PIPE_STATE = i32; 7343 pub const PipeState_DontCare: PIPE_STATE = 0i32; 7344 pub const PipeState_RangeNotFixed: PIPE_STATE = 1i32; 7345 pub const PipeState_RangeFixed: PIPE_STATE = 2i32; 7346 pub const PipeState_CompressionUnknown: PIPE_STATE = 3i32; 7347 pub const PipeState_Finalized: PIPE_STATE = 4i32; 7348 #[repr(C)] 7349 pub struct PIPE_TERMINATION { 7350 pub Flags: u32, 7351 pub OutsideFactors: u32, 7352 pub Weigth: u32, 7353 pub PhysicalRange: KS_FRAMING_RANGE, 7354 pub OptimalRange: KS_FRAMING_RANGE_WEIGHTED, 7355 pub Compression: KS_COMPRESSION, 7356 } 7357 impl ::core::marker::Copy for PIPE_TERMINATION {} 7358 impl ::core::clone::Clone for PIPE_TERMINATION { clone(&self) -> Self7359 fn clone(&self) -> Self { 7360 *self 7361 } 7362 } 7363 pub const PROPSETID_ALLOCATOR_CONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1394022752, data2: 5262, data3: 4562, data4: [153, 121, 0, 0, 192, 204, 22, 186] }; 7364 pub const PROPSETID_EXT_DEVICE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3044215440, data2: 6700, data3: 4559, data4: [140, 35, 0, 170, 0, 107, 104, 20] }; 7365 pub const PROPSETID_EXT_TRANSPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2688341488, data2: 12357, data3: 4559, data4: [140, 68, 0, 170, 0, 107, 104, 20] }; 7366 pub const PROPSETID_TIMECODE_READER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2605280481, data2: 33051, data3: 4559, data4: [140, 119, 0, 170, 0, 107, 104, 20] }; 7367 pub const PROPSETID_TUNER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401093, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7368 pub const PROPSETID_VIDCAP_CAMERACONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3336647536, data2: 12460, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7369 pub const PROPSETID_VIDCAP_CAMERACONTROL_FLASH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 7370 data1: 2019462985, 7371 data2: 25506, 7372 data3: 16708, 7373 data4: [171, 112, 255, 178, 120, 250, 38, 206], 7374 }; 7375 pub const PROPSETID_VIDCAP_CAMERACONTROL_IMAGE_PIN_CAPABILITY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2638052287, data2: 23661, data3: 16696, data4: [187, 0, 88, 78, 221, 32, 247, 197] }; 7376 pub const PROPSETID_VIDCAP_CAMERACONTROL_REGION_OF_INTEREST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 7377 data1: 2635256216, 7378 data2: 63596, 7379 data3: 20461, 7380 data4: [176, 35, 93, 135, 101, 61, 167, 147], 7381 }; 7382 pub const PROPSETID_VIDCAP_CAMERACONTROL_VIDEO_STABILIZATION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 7383 data1: 1133923283, 7384 data2: 30486, 7385 data3: 16462, 7386 data4: [139, 225, 210, 153, 178, 14, 80, 253], 7387 }; 7388 pub const PROPSETID_VIDCAP_CROSSBAR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401152, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7389 pub const PROPSETID_VIDCAP_DROPPEDFRAMES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3336647492, data2: 12460, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7390 pub const PROPSETID_VIDCAP_SELECTOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 7391 data1: 448638666, 7392 data2: 26806, 7393 data3: 20355, 7394 data4: [147, 113, 180, 19, 144, 124, 123, 159], 7395 }; 7396 pub const PROPSETID_VIDCAP_TVAUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401168, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7397 pub const PROPSETID_VIDCAP_VIDEOCOMPRESSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3336647491, data2: 12460, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7398 pub const PROPSETID_VIDCAP_VIDEOCONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401200, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7399 pub const PROPSETID_VIDCAP_VIDEODECODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3336647504, data2: 12460, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7400 pub const PROPSETID_VIDCAP_VIDEOENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1781401104, data2: 10468, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7401 pub const PROPSETID_VIDCAP_VIDEOPROCAMP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3336647520, data2: 12460, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; 7402 pub const PipeFactor_Align: u32 = 512u32; 7403 pub const PipeFactor_Buffers: u32 = 256u32; 7404 pub const PipeFactor_FixedCompression: u32 = 64u32; 7405 pub const PipeFactor_Flags: u32 = 8u32; 7406 pub const PipeFactor_LogicalEnd: u32 = 2048u32; 7407 pub const PipeFactor_MemoryTypes: u32 = 4u32; 7408 pub const PipeFactor_None: u32 = 0u32; 7409 pub const PipeFactor_OptimalRanges: u32 = 32u32; 7410 pub const PipeFactor_PhysicalEnd: u32 = 1024u32; 7411 pub const PipeFactor_PhysicalRanges: u32 = 16u32; 7412 pub const PipeFactor_UnknownCompression: u32 = 128u32; 7413 pub const PipeFactor_UserModeDownstream: u32 = 2u32; 7414 pub const PipeFactor_UserModeUpstream: u32 = 1u32; 7415 #[cfg(feature = "Win32_Foundation")] 7416 pub const RT_RCDATA: super::super::Foundation::PWSTR = 10i32 as _; 7417 #[cfg(feature = "Win32_Foundation")] 7418 pub const RT_STRING: super::super::Foundation::PWSTR = 6i32 as _; 7419 #[repr(C)] 7420 pub struct SECURE_BUFFER_INFO { 7421 pub guidBufferIdentifier: ::windows_sys::core::GUID, 7422 pub cbBufferSize: u32, 7423 pub cbCaptured: u32, 7424 pub ullReserved: [u64; 16], 7425 } 7426 impl ::core::marker::Copy for SECURE_BUFFER_INFO {} 7427 impl ::core::clone::Clone for SECURE_BUFFER_INFO { clone(&self) -> Self7428 fn clone(&self) -> Self { 7429 *self 7430 } 7431 } 7432 #[repr(C)] 7433 pub struct SOUNDDETECTOR_PATTERNHEADER { 7434 pub Size: u32, 7435 pub PatternType: ::windows_sys::core::GUID, 7436 } 7437 impl ::core::marker::Copy for SOUNDDETECTOR_PATTERNHEADER {} 7438 impl ::core::clone::Clone for SOUNDDETECTOR_PATTERNHEADER { clone(&self) -> Self7439 fn clone(&self) -> Self { 7440 *self 7441 } 7442 } 7443 pub const SPEAKER_ALL: u32 = 2147483648u32; 7444 pub const SPEAKER_BACK_CENTER: u32 = 256u32; 7445 pub const SPEAKER_BACK_LEFT: u32 = 16u32; 7446 pub const SPEAKER_BACK_RIGHT: u32 = 32u32; 7447 pub const SPEAKER_FRONT_CENTER: u32 = 4u32; 7448 pub const SPEAKER_FRONT_LEFT: u32 = 1u32; 7449 pub const SPEAKER_FRONT_LEFT_OF_CENTER: u32 = 64u32; 7450 pub const SPEAKER_FRONT_RIGHT: u32 = 2u32; 7451 pub const SPEAKER_FRONT_RIGHT_OF_CENTER: u32 = 128u32; 7452 pub const SPEAKER_LOW_FREQUENCY: u32 = 8u32; 7453 pub const SPEAKER_RESERVED: u32 = 2147221504u32; 7454 pub const SPEAKER_SIDE_LEFT: u32 = 512u32; 7455 pub const SPEAKER_SIDE_RIGHT: u32 = 1024u32; 7456 pub const SPEAKER_TOP_BACK_CENTER: u32 = 65536u32; 7457 pub const SPEAKER_TOP_BACK_LEFT: u32 = 32768u32; 7458 pub const SPEAKER_TOP_BACK_RIGHT: u32 = 131072u32; 7459 pub const SPEAKER_TOP_CENTER: u32 = 2048u32; 7460 pub const SPEAKER_TOP_FRONT_CENTER: u32 = 8192u32; 7461 pub const SPEAKER_TOP_FRONT_LEFT: u32 = 4096u32; 7462 pub const SPEAKER_TOP_FRONT_RIGHT: u32 = 16384u32; 7463 pub const SYSAUDIO_FLAGS_CLEAR_PREFERRED: u32 = 2u32; 7464 pub const SYSAUDIO_FLAGS_DONT_COMBINE_PINS: u32 = 1u32; 7465 pub type TELEPHONY_CALLCONTROLOP = i32; 7466 pub const TELEPHONY_CALLCONTROLOP_DISABLE: TELEPHONY_CALLCONTROLOP = 0i32; 7467 pub const TELEPHONY_CALLCONTROLOP_ENABLE: TELEPHONY_CALLCONTROLOP = 1i32; 7468 pub type TELEPHONY_CALLSTATE = i32; 7469 pub const TELEPHONY_CALLSTATE_DISABLED: TELEPHONY_CALLSTATE = 0i32; 7470 pub const TELEPHONY_CALLSTATE_ENABLED: TELEPHONY_CALLSTATE = 1i32; 7471 pub const TELEPHONY_CALLSTATE_HOLD: TELEPHONY_CALLSTATE = 2i32; 7472 pub const TELEPHONY_CALLSTATE_PROVIDERTRANSITION: TELEPHONY_CALLSTATE = 3i32; 7473 pub type TELEPHONY_CALLTYPE = i32; 7474 pub const TELEPHONY_CALLTYPE_CIRCUITSWITCHED: TELEPHONY_CALLTYPE = 0i32; 7475 pub const TELEPHONY_CALLTYPE_PACKETSWITCHED_LTE: TELEPHONY_CALLTYPE = 1i32; 7476 pub const TELEPHONY_CALLTYPE_PACKETSWITCHED_WLAN: TELEPHONY_CALLTYPE = 2i32; 7477 pub type TELEPHONY_PROVIDERCHANGEOP = i32; 7478 pub const TELEPHONY_PROVIDERCHANGEOP_END: TELEPHONY_PROVIDERCHANGEOP = 0i32; 7479 pub const TELEPHONY_PROVIDERCHANGEOP_BEGIN: TELEPHONY_PROVIDERCHANGEOP = 1i32; 7480 pub const TELEPHONY_PROVIDERCHANGEOP_CANCEL: TELEPHONY_PROVIDERCHANGEOP = 2i32; 7481 #[repr(C)] 7482 pub struct TRANSPORTAUDIOPARMS { 7483 pub EnableOutput: i32, 7484 pub EnableRecord: i32, 7485 pub EnableSelsync: i32, 7486 pub Input: i32, 7487 pub MonitorSource: i32, 7488 } 7489 impl ::core::marker::Copy for TRANSPORTAUDIOPARMS {} 7490 impl ::core::clone::Clone for TRANSPORTAUDIOPARMS { clone(&self) -> Self7491 fn clone(&self) -> Self { 7492 *self 7493 } 7494 } 7495 #[repr(C)] 7496 pub struct TRANSPORTBASICPARMS { 7497 pub TimeFormat: i32, 7498 pub TimeReference: i32, 7499 pub Superimpose: i32, 7500 pub EndStopAction: i32, 7501 pub RecordFormat: i32, 7502 pub StepFrames: i32, 7503 pub SetpField: i32, 7504 pub Preroll: i32, 7505 pub RecPreroll: i32, 7506 pub Postroll: i32, 7507 pub EditDelay: i32, 7508 pub PlayTCDelay: i32, 7509 pub RecTCDelay: i32, 7510 pub EditField: i32, 7511 pub FrameServo: i32, 7512 pub ColorFrameServo: i32, 7513 pub ServoRef: i32, 7514 pub WarnGenlock: i32, 7515 pub SetTracking: i32, 7516 pub VolumeName: [i8; 40], 7517 pub Ballistic: [i32; 20], 7518 pub Speed: i32, 7519 pub CounterFormat: i32, 7520 pub TunerChannel: i32, 7521 pub TunerNumber: i32, 7522 pub TimerEvent: i32, 7523 pub TimerStartDay: i32, 7524 pub TimerStartTime: i32, 7525 pub TimerStopDay: i32, 7526 pub TimerStopTime: i32, 7527 } 7528 impl ::core::marker::Copy for TRANSPORTBASICPARMS {} 7529 impl ::core::clone::Clone for TRANSPORTBASICPARMS { clone(&self) -> Self7530 fn clone(&self) -> Self { 7531 *self 7532 } 7533 } 7534 #[repr(C)] 7535 pub struct TRANSPORTSTATUS { 7536 pub Mode: i32, 7537 pub LastError: i32, 7538 pub RecordInhibit: i32, 7539 pub ServoLock: i32, 7540 pub MediaPresent: i32, 7541 pub MediaLength: i32, 7542 pub MediaSize: i32, 7543 pub MediaTrackCount: i32, 7544 pub MediaTrackLength: i32, 7545 pub MediaTrackSide: i32, 7546 pub MediaType: i32, 7547 pub LinkMode: i32, 7548 pub NotifyOn: i32, 7549 } 7550 impl ::core::marker::Copy for TRANSPORTSTATUS {} 7551 impl ::core::clone::Clone for TRANSPORTSTATUS { clone(&self) -> Self7552 fn clone(&self) -> Self { 7553 *self 7554 } 7555 } 7556 #[repr(C)] 7557 pub struct TRANSPORTVIDEOPARMS { 7558 pub OutputMode: i32, 7559 pub Input: i32, 7560 } 7561 impl ::core::marker::Copy for TRANSPORTVIDEOPARMS {} 7562 impl ::core::clone::Clone for TRANSPORTVIDEOPARMS { clone(&self) -> Self7563 fn clone(&self) -> Self { 7564 *self 7565 } 7566 } 7567 #[repr(C)] 7568 pub struct TRANSPORT_STATE { 7569 pub Mode: u32, 7570 pub State: u32, 7571 } 7572 impl ::core::marker::Copy for TRANSPORT_STATE {} 7573 impl ::core::clone::Clone for TRANSPORT_STATE { clone(&self) -> Self7574 fn clone(&self) -> Self { 7575 *self 7576 } 7577 } 7578 #[repr(C)] 7579 pub struct TUNER_ANALOG_CAPS_S { 7580 pub Mode: u32, 7581 pub StandardsSupported: u32, 7582 pub MinFrequency: u32, 7583 pub MaxFrequency: u32, 7584 pub TuningGranularity: u32, 7585 pub SettlingTime: u32, 7586 pub ScanSensingRange: u32, 7587 pub FineTuneSensingRange: u32, 7588 } 7589 impl ::core::marker::Copy for TUNER_ANALOG_CAPS_S {} 7590 impl ::core::clone::Clone for TUNER_ANALOG_CAPS_S { clone(&self) -> Self7591 fn clone(&self) -> Self { 7592 *self 7593 } 7594 } 7595 #[repr(C)] 7596 pub struct VBICAP_PROPERTIES_PROTECTION_S { 7597 pub Property: KSIDENTIFIER, 7598 pub StreamIndex: u32, 7599 pub Status: u32, 7600 } 7601 impl ::core::marker::Copy for VBICAP_PROPERTIES_PROTECTION_S {} 7602 impl ::core::clone::Clone for VBICAP_PROPERTIES_PROTECTION_S { clone(&self) -> Self7603 fn clone(&self) -> Self { 7604 *self 7605 } 7606 } 7607 #[repr(C)] 7608 pub struct VBICODECFILTERING_CC_SUBSTREAMS { 7609 pub SubstreamMask: u32, 7610 } 7611 impl ::core::marker::Copy for VBICODECFILTERING_CC_SUBSTREAMS {} 7612 impl ::core::clone::Clone for VBICODECFILTERING_CC_SUBSTREAMS { clone(&self) -> Self7613 fn clone(&self) -> Self { 7614 *self 7615 } 7616 } 7617 #[repr(C)] 7618 pub struct VBICODECFILTERING_NABTS_SUBSTREAMS { 7619 pub SubstreamMask: [u32; 128], 7620 } 7621 impl ::core::marker::Copy for VBICODECFILTERING_NABTS_SUBSTREAMS {} 7622 impl ::core::clone::Clone for VBICODECFILTERING_NABTS_SUBSTREAMS { clone(&self) -> Self7623 fn clone(&self) -> Self { 7624 *self 7625 } 7626 } 7627 #[repr(C)] 7628 pub struct VBICODECFILTERING_SCANLINES { 7629 pub DwordBitArray: [u32; 32], 7630 } 7631 impl ::core::marker::Copy for VBICODECFILTERING_SCANLINES {} 7632 impl ::core::clone::Clone for VBICODECFILTERING_SCANLINES { clone(&self) -> Self7633 fn clone(&self) -> Self { 7634 *self 7635 } 7636 } 7637 #[repr(C)] 7638 pub struct VBICODECFILTERING_STATISTICS_CC { 7639 pub Common: VBICODECFILTERING_STATISTICS_COMMON, 7640 } 7641 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_CC {} 7642 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_CC { clone(&self) -> Self7643 fn clone(&self) -> Self { 7644 *self 7645 } 7646 } 7647 #[repr(C)] 7648 pub struct VBICODECFILTERING_STATISTICS_CC_PIN { 7649 pub Common: VBICODECFILTERING_STATISTICS_COMMON_PIN, 7650 } 7651 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_CC_PIN {} 7652 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_CC_PIN { clone(&self) -> Self7653 fn clone(&self) -> Self { 7654 *self 7655 } 7656 } 7657 #[repr(C)] 7658 pub struct VBICODECFILTERING_STATISTICS_COMMON { 7659 pub InputSRBsProcessed: u32, 7660 pub OutputSRBsProcessed: u32, 7661 pub SRBsIgnored: u32, 7662 pub InputSRBsMissing: u32, 7663 pub OutputSRBsMissing: u32, 7664 pub OutputFailures: u32, 7665 pub InternalErrors: u32, 7666 pub ExternalErrors: u32, 7667 pub InputDiscontinuities: u32, 7668 pub DSPFailures: u32, 7669 pub TvTunerChanges: u32, 7670 pub VBIHeaderChanges: u32, 7671 pub LineConfidenceAvg: u32, 7672 pub BytesOutput: u32, 7673 } 7674 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_COMMON {} 7675 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_COMMON { clone(&self) -> Self7676 fn clone(&self) -> Self { 7677 *self 7678 } 7679 } 7680 #[repr(C)] 7681 pub struct VBICODECFILTERING_STATISTICS_COMMON_PIN { 7682 pub SRBsProcessed: u32, 7683 pub SRBsIgnored: u32, 7684 pub SRBsMissing: u32, 7685 pub InternalErrors: u32, 7686 pub ExternalErrors: u32, 7687 pub Discontinuities: u32, 7688 pub LineConfidenceAvg: u32, 7689 pub BytesOutput: u32, 7690 } 7691 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_COMMON_PIN {} 7692 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_COMMON_PIN { clone(&self) -> Self7693 fn clone(&self) -> Self { 7694 *self 7695 } 7696 } 7697 #[repr(C)] 7698 pub struct VBICODECFILTERING_STATISTICS_NABTS { 7699 pub Common: VBICODECFILTERING_STATISTICS_COMMON, 7700 pub FECBundleBadLines: u32, 7701 pub FECQueueOverflows: u32, 7702 pub FECCorrectedLines: u32, 7703 pub FECUncorrectableLines: u32, 7704 pub BundlesProcessed: u32, 7705 pub BundlesSent2IP: u32, 7706 pub FilteredLines: u32, 7707 } 7708 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_NABTS {} 7709 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_NABTS { clone(&self) -> Self7710 fn clone(&self) -> Self { 7711 *self 7712 } 7713 } 7714 #[repr(C)] 7715 pub struct VBICODECFILTERING_STATISTICS_NABTS_PIN { 7716 pub Common: VBICODECFILTERING_STATISTICS_COMMON_PIN, 7717 } 7718 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_NABTS_PIN {} 7719 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_NABTS_PIN { clone(&self) -> Self7720 fn clone(&self) -> Self { 7721 *self 7722 } 7723 } 7724 #[repr(C)] 7725 pub struct VBICODECFILTERING_STATISTICS_TELETEXT { 7726 pub Common: VBICODECFILTERING_STATISTICS_COMMON, 7727 } 7728 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_TELETEXT {} 7729 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_TELETEXT { clone(&self) -> Self7730 fn clone(&self) -> Self { 7731 *self 7732 } 7733 } 7734 #[repr(C)] 7735 pub struct VBICODECFILTERING_STATISTICS_TELETEXT_PIN { 7736 pub Common: VBICODECFILTERING_STATISTICS_COMMON_PIN, 7737 } 7738 impl ::core::marker::Copy for VBICODECFILTERING_STATISTICS_TELETEXT_PIN {} 7739 impl ::core::clone::Clone for VBICODECFILTERING_STATISTICS_TELETEXT_PIN { clone(&self) -> Self7740 fn clone(&self) -> Self { 7741 *self 7742 } 7743 } 7744 #[repr(C)] 7745 pub struct VRAM_SURFACE_INFO { 7746 pub hSurface: usize, 7747 pub VramPhysicalAddress: i64, 7748 pub cbCaptured: u32, 7749 pub dwWidth: u32, 7750 pub dwHeight: u32, 7751 pub dwLinearSize: u32, 7752 pub lPitch: i32, 7753 pub ullReserved: [u64; 16], 7754 } 7755 impl ::core::marker::Copy for VRAM_SURFACE_INFO {} 7756 impl ::core::clone::Clone for VRAM_SURFACE_INFO { clone(&self) -> Self7757 fn clone(&self) -> Self { 7758 *self 7759 } 7760 } 7761 #[repr(C)] 7762 pub struct VRAM_SURFACE_INFO_PROPERTY_S { 7763 pub Property: KSIDENTIFIER, 7764 pub pVramSurfaceInfo: *mut VRAM_SURFACE_INFO, 7765 } 7766 impl ::core::marker::Copy for VRAM_SURFACE_INFO_PROPERTY_S {} 7767 impl ::core::clone::Clone for VRAM_SURFACE_INFO_PROPERTY_S { clone(&self) -> Self7768 fn clone(&self) -> Self { 7769 *self 7770 } 7771 } 7772 pub const WAVE_FORMAT_EXTENSIBLE: u32 = 65534u32; 7773 #[repr(C)] 7774 pub struct WNF_KSCAMERA_STREAMSTATE_INFO { 7775 pub ProcessId: u32, 7776 pub SessionId: u32, 7777 pub StreamState: u32, 7778 pub Reserved: u32, 7779 } 7780 impl ::core::marker::Copy for WNF_KSCAMERA_STREAMSTATE_INFO {} 7781 impl ::core::clone::Clone for WNF_KSCAMERA_STREAMSTATE_INFO { clone(&self) -> Self7782 fn clone(&self) -> Self { 7783 *self 7784 } 7785 } 7786 #[repr(C)] 7787 pub struct WST_BUFFER { 7788 pub ScanlinesRequested: VBICODECFILTERING_SCANLINES, 7789 pub WstLines: [WST_BUFFER_LINE; 17], 7790 } 7791 impl ::core::marker::Copy for WST_BUFFER {} 7792 impl ::core::clone::Clone for WST_BUFFER { clone(&self) -> Self7793 fn clone(&self) -> Self { 7794 *self 7795 } 7796 } 7797 #[repr(C)] 7798 pub struct WST_BUFFER_LINE { 7799 pub Confidence: u8, 7800 pub Bytes: [u8; 42], 7801 } 7802 impl ::core::marker::Copy for WST_BUFFER_LINE {} 7803 impl ::core::clone::Clone for WST_BUFFER_LINE { clone(&self) -> Self7804 fn clone(&self) -> Self { 7805 *self 7806 } 7807 } 7808 pub const WST_BYTES_PER_LINE: u32 = 42u32; 7809 pub const WST_TVTUNER_CHANGE_BEGIN_TUNE: i32 = 4096i32; 7810 pub const WST_TVTUNER_CHANGE_END_TUNE: i32 = 8192i32; 7811 #[repr(C)] 7812 pub struct _KSAUDIO_PACKETSIZE_SIGNALPROCESSINGMODE_CONSTRAINT { 7813 pub ProcessingMode: ::windows_sys::core::GUID, 7814 pub SamplesPerProcessingPacket: u32, 7815 pub ProcessingPacketDurationInHns: u32, 7816 } 7817 impl ::core::marker::Copy for _KSAUDIO_PACKETSIZE_SIGNALPROCESSINGMODE_CONSTRAINT {} 7818 impl ::core::clone::Clone for _KSAUDIO_PACKETSIZE_SIGNALPROCESSINGMODE_CONSTRAINT { clone(&self) -> Self7819 fn clone(&self) -> Self { 7820 *self 7821 } 7822 } 7823 pub type _TunerDecoderLockType = i32; 7824 pub const Tuner_LockType_None: _TunerDecoderLockType = 0i32; 7825 pub const Tuner_LockType_Within_Scan_Sensing_Range: _TunerDecoderLockType = 1i32; 7826 pub const Tuner_LockType_Locked: _TunerDecoderLockType = 2i32; 7827