1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms
6 // Licensed under the MIT License <LICENSE.md>
7 //! Mappings for the contents of ksmedia.h
8 use shared::minwindef::DWORD;
9 DEFINE_GUID!{KSCATEGORY_AUDIO,
10     0x6994AD04, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
11 DEFINE_GUID!{KSCATEGORY_VIDEO,
12     0x6994AD05, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
13 DEFINE_GUID!{KSCATEGORY_REALTIME,
14     0xEB115FFC, 0x10C8, 0x4964, 0x83, 0x1D, 0x6D, 0xCB, 0x02, 0xE6, 0xF2, 0x3F}
15 DEFINE_GUID!{KSCATEGORY_TEXT,
16     0x6994AD06, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
17 DEFINE_GUID!{KSCATEGORY_NETWORK,
18     0x67C9CC3C, 0x69C4, 0x11D2, 0x87, 0x59, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
19 DEFINE_GUID!{KSCATEGORY_TOPOLOGY,
20     0xDDA54A40, 0x1E4C, 0x11D1, 0xA0, 0x50, 0x40, 0x57, 0x05, 0xC1, 0x00, 0x00}
21 DEFINE_GUID!{KSCATEGORY_VIRTUAL,
22     0x3503EAC4, 0x1F26, 0x11D1, 0x8A, 0xB0, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
23 DEFINE_GUID!{KSCATEGORY_ACOUSTIC_ECHO_CANCEL,
24     0xBF963D80, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1}
25 DEFINE_GUID!{KSCATEGORY_SYSAUDIO,
26     0xA7C7A5B1, 0x5AF3, 0x11D1, 0x9C, 0xED, 0x00, 0xA0, 0x24, 0xBF, 0x04, 0x07}
27 DEFINE_GUID!{KSCATEGORY_WDMAUD,
28     0x3E227E76, 0x690D, 0x11D2, 0x81, 0x61, 0x00, 0x00, 0xF8, 0x77, 0x5B, 0xF1}
29 DEFINE_GUID!{KSCATEGORY_AUDIO_GFX,
30     0x9BAF9572, 0x340C, 0x11D3, 0xAB, 0xDC, 0x00, 0xA0, 0xC9, 0x0A, 0xB1, 0x6F}
31 DEFINE_GUID!{KSCATEGORY_AUDIO_SPLITTER,
32     0x9EA331FA, 0xB91B, 0x45F8, 0x92, 0x85, 0xBD, 0x2B, 0xC7, 0x7A, 0xFC, 0xDE}
33 DEFINE_GUID!{KSCATEGORY_AUDIO_DEVICE,
34     0xFBF6F530, 0x07B9, 0x11D2, 0xA7, 0x1E, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
35 DEFINE_GUID!{KSCATEGORY_PREFERRED_WAVEOUT_DEVICE,
36     0xD6C5066E, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
37 DEFINE_GUID!{KSCATEGORY_PREFERRED_WAVEIN_DEVICE,
38     0xD6C50671, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
39 DEFINE_GUID!{KSCATEGORY_PREFERRED_MIDIOUT_DEVICE,
40     0xD6C50674, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
41 DEFINE_GUID!{KSCATEGORY_WDMAUD_USE_PIN_NAME,
42     0x47A4FA20, 0xA251, 0x11D1, 0xA0, 0x50, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
43 DEFINE_GUID!{KSCATEGORY_ESCALANTE_PLATFORM_DRIVER,
44     0x74F3AEA8, 0x9768, 0x11D1, 0x8E, 0x07, 0x00, 0xA0, 0xC9, 0x5E, 0xC2, 0x2E}
45 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_ANALOG,
46     0x6DBA3190, 0x67BD, 0x11CF, 0xA0, 0xF7, 0x00, 0x20, 0xAF, 0xD1, 0x56, 0xE4}
47 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_PCM,
48     0x00000001, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
49 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_IEEE_FLOAT,
50     0x00000003, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
51 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_DRM,
52     0x00000009, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
53 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_ALAW,
54     0x00000006, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
55 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_MULAW,
56     0x00000007, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
57 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_ADPCM,
58     0x00000002, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
59 DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_MPEG,
60     0x00000050, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
61 //1720
62 pub const SPEAKER_FRONT_LEFT: DWORD = 0x1;
63 pub const SPEAKER_FRONT_RIGHT: DWORD = 0x2;
64 pub const SPEAKER_FRONT_CENTER: DWORD = 0x4;
65 pub const SPEAKER_LOW_FREQUENCY: DWORD = 0x8;
66 pub const SPEAKER_BACK_LEFT: DWORD = 0x10;
67 pub const SPEAKER_BACK_RIGHT: DWORD = 0x20;
68 pub const SPEAKER_FRONT_LEFT_OF_CENTER: DWORD = 0x40;
69 pub const SPEAKER_FRONT_RIGHT_OF_CENTER: DWORD = 0x80;
70 pub const SPEAKER_BACK_CENTER: DWORD = 0x100;
71 pub const SPEAKER_SIDE_LEFT: DWORD = 0x200;
72 pub const SPEAKER_SIDE_RIGHT: DWORD = 0x400;
73 pub const SPEAKER_TOP_CENTER: DWORD = 0x800;
74 pub const SPEAKER_TOP_FRONT_LEFT: DWORD = 0x1000;
75 pub const SPEAKER_TOP_FRONT_CENTER: DWORD = 0x2000;
76 pub const SPEAKER_TOP_FRONT_RIGHT: DWORD = 0x4000;
77 pub const SPEAKER_TOP_BACK_LEFT: DWORD = 0x8000;
78 pub const SPEAKER_TOP_BACK_CENTER: DWORD = 0x10000;
79 pub const SPEAKER_TOP_BACK_RIGHT: DWORD = 0x20000;
80 pub const SPEAKER_RESERVED: DWORD = 0x7FFC0000;
81 pub const SPEAKER_ALL: DWORD = 0x80000000;
82 pub const KSAUDIO_SPEAKER_DIRECTOUT: DWORD = 0;
83 pub const KSAUDIO_SPEAKER_MONO: DWORD = SPEAKER_FRONT_CENTER;
84 pub const KSAUDIO_SPEAKER_1POINT1: DWORD = SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY;
85 pub const KSAUDIO_SPEAKER_STEREO: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT;
86 pub const KSAUDIO_SPEAKER_2POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
87     | SPEAKER_LOW_FREQUENCY;
88 pub const KSAUDIO_SPEAKER_3POINT0: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
89     | SPEAKER_FRONT_CENTER;
90 pub const KSAUDIO_SPEAKER_3POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
91     | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY;
92 pub const KSAUDIO_SPEAKER_QUAD: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
93     | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT;
94 pub const KSAUDIO_SPEAKER_SURROUND: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
95     | SPEAKER_FRONT_CENTER | SPEAKER_BACK_CENTER;
96 pub const KSAUDIO_SPEAKER_5POINT0: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
97     | SPEAKER_FRONT_CENTER | SPEAKER_SIDE_LEFT  | SPEAKER_SIDE_RIGHT;
98 pub const KSAUDIO_SPEAKER_5POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
99     | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT  | SPEAKER_BACK_RIGHT;
100 pub const KSAUDIO_SPEAKER_7POINT0: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
101     | SPEAKER_FRONT_CENTER | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT | SPEAKER_SIDE_LEFT
102     | SPEAKER_SIDE_RIGHT;
103 pub const KSAUDIO_SPEAKER_7POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
104     | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT
105     | SPEAKER_FRONT_LEFT_OF_CENTER | SPEAKER_FRONT_RIGHT_OF_CENTER;
106 pub const KSAUDIO_SPEAKER_5POINT1_SURROUND: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
107     | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_SIDE_LEFT  | SPEAKER_SIDE_RIGHT;
108 pub const KSAUDIO_SPEAKER_7POINT1_SURROUND: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
109     | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT
110     | SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT;
111