// Licensed under the Apache License, Version 2.0
// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
// All files in the project carrying such notice may not be copied, modified, or distributed
// except according to those terms
// Licensed under the MIT License <LICENSE.md>
//! Mappings for the contents of ksmedia.h
use shared::minwindef::DWORD;
DEFINE_GUID!{KSCATEGORY_AUDIO,
    0x6994AD04, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
DEFINE_GUID!{KSCATEGORY_VIDEO,
    0x6994AD05, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
DEFINE_GUID!{KSCATEGORY_REALTIME,
    0xEB115FFC, 0x10C8, 0x4964, 0x83, 0x1D, 0x6D, 0xCB, 0x02, 0xE6, 0xF2, 0x3F}
DEFINE_GUID!{KSCATEGORY_TEXT,
    0x6994AD06, 0x93EF, 0x11D0, 0xA3, 0xCC, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
DEFINE_GUID!{KSCATEGORY_NETWORK,
    0x67C9CC3C, 0x69C4, 0x11D2, 0x87, 0x59, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
DEFINE_GUID!{KSCATEGORY_TOPOLOGY,
    0xDDA54A40, 0x1E4C, 0x11D1, 0xA0, 0x50, 0x40, 0x57, 0x05, 0xC1, 0x00, 0x00}
DEFINE_GUID!{KSCATEGORY_VIRTUAL,
    0x3503EAC4, 0x1F26, 0x11D1, 0x8A, 0xB0, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96}
DEFINE_GUID!{KSCATEGORY_ACOUSTIC_ECHO_CANCEL,
    0xBF963D80, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1}
DEFINE_GUID!{KSCATEGORY_SYSAUDIO,
    0xA7C7A5B1, 0x5AF3, 0x11D1, 0x9C, 0xED, 0x00, 0xA0, 0x24, 0xBF, 0x04, 0x07}
DEFINE_GUID!{KSCATEGORY_WDMAUD,
    0x3E227E76, 0x690D, 0x11D2, 0x81, 0x61, 0x00, 0x00, 0xF8, 0x77, 0x5B, 0xF1}
DEFINE_GUID!{KSCATEGORY_AUDIO_GFX,
    0x9BAF9572, 0x340C, 0x11D3, 0xAB, 0xDC, 0x00, 0xA0, 0xC9, 0x0A, 0xB1, 0x6F}
DEFINE_GUID!{KSCATEGORY_AUDIO_SPLITTER,
    0x9EA331FA, 0xB91B, 0x45F8, 0x92, 0x85, 0xBD, 0x2B, 0xC7, 0x7A, 0xFC, 0xDE}
DEFINE_GUID!{KSCATEGORY_AUDIO_DEVICE,
    0xFBF6F530, 0x07B9, 0x11D2, 0xA7, 0x1E, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
DEFINE_GUID!{KSCATEGORY_PREFERRED_WAVEOUT_DEVICE,
    0xD6C5066E, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
DEFINE_GUID!{KSCATEGORY_PREFERRED_WAVEIN_DEVICE,
    0xD6C50671, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
DEFINE_GUID!{KSCATEGORY_PREFERRED_MIDIOUT_DEVICE,
    0xD6C50674, 0x72C1, 0x11D2, 0x97, 0x55, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
DEFINE_GUID!{KSCATEGORY_WDMAUD_USE_PIN_NAME,
    0x47A4FA20, 0xA251, 0x11D1, 0xA0, 0x50, 0x00, 0x00, 0xF8, 0x00, 0x47, 0x88}
DEFINE_GUID!{KSCATEGORY_ESCALANTE_PLATFORM_DRIVER,
    0x74F3AEA8, 0x9768, 0x11D1, 0x8E, 0x07, 0x00, 0xA0, 0xC9, 0x5E, 0xC2, 0x2E}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_ANALOG,
    0x6DBA3190, 0x67BD, 0x11CF, 0xA0, 0xF7, 0x00, 0x20, 0xAF, 0xD1, 0x56, 0xE4}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_PCM,
    0x00000001, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_IEEE_FLOAT,
    0x00000003, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_DRM,
    0x00000009, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_ALAW,
    0x00000006, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_MULAW,
    0x00000007, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_ADPCM,
    0x00000002, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
DEFINE_GUID!{KSDATAFORMAT_SUBTYPE_MPEG,
    0x00000050, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71}
//1720
pub const SPEAKER_FRONT_LEFT: DWORD = 0x1;
pub const SPEAKER_FRONT_RIGHT: DWORD = 0x2;
pub const SPEAKER_FRONT_CENTER: DWORD = 0x4;
pub const SPEAKER_LOW_FREQUENCY: DWORD = 0x8;
pub const SPEAKER_BACK_LEFT: DWORD = 0x10;
pub const SPEAKER_BACK_RIGHT: DWORD = 0x20;
pub const SPEAKER_FRONT_LEFT_OF_CENTER: DWORD = 0x40;
pub const SPEAKER_FRONT_RIGHT_OF_CENTER: DWORD = 0x80;
pub const SPEAKER_BACK_CENTER: DWORD = 0x100;
pub const SPEAKER_SIDE_LEFT: DWORD = 0x200;
pub const SPEAKER_SIDE_RIGHT: DWORD = 0x400;
pub const SPEAKER_TOP_CENTER: DWORD = 0x800;
pub const SPEAKER_TOP_FRONT_LEFT: DWORD = 0x1000;
pub const SPEAKER_TOP_FRONT_CENTER: DWORD = 0x2000;
pub const SPEAKER_TOP_FRONT_RIGHT: DWORD = 0x4000;
pub const SPEAKER_TOP_BACK_LEFT: DWORD = 0x8000;
pub const SPEAKER_TOP_BACK_CENTER: DWORD = 0x10000;
pub const SPEAKER_TOP_BACK_RIGHT: DWORD = 0x20000;
pub const SPEAKER_RESERVED: DWORD = 0x7FFC0000;
pub const SPEAKER_ALL: DWORD = 0x80000000;
pub const KSAUDIO_SPEAKER_DIRECTOUT: DWORD = 0;
pub const KSAUDIO_SPEAKER_MONO: DWORD = SPEAKER_FRONT_CENTER;
pub const KSAUDIO_SPEAKER_1POINT1: DWORD = SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY;
pub const KSAUDIO_SPEAKER_STEREO: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT;
pub const KSAUDIO_SPEAKER_2POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_LOW_FREQUENCY;
pub const KSAUDIO_SPEAKER_3POINT0: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER;
pub const KSAUDIO_SPEAKER_3POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY;
pub const KSAUDIO_SPEAKER_QUAD: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT;
pub const KSAUDIO_SPEAKER_SURROUND: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_BACK_CENTER;
pub const KSAUDIO_SPEAKER_5POINT0: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_SIDE_LEFT  | SPEAKER_SIDE_RIGHT;
pub const KSAUDIO_SPEAKER_5POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT  | SPEAKER_BACK_RIGHT;
pub const KSAUDIO_SPEAKER_7POINT0: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT | SPEAKER_SIDE_LEFT
    | SPEAKER_SIDE_RIGHT;
pub const KSAUDIO_SPEAKER_7POINT1: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT
    | SPEAKER_FRONT_LEFT_OF_CENTER | SPEAKER_FRONT_RIGHT_OF_CENTER;
pub const KSAUDIO_SPEAKER_5POINT1_SURROUND: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_SIDE_LEFT  | SPEAKER_SIDE_RIGHT;
pub const KSAUDIO_SPEAKER_7POINT1_SURROUND: DWORD = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT
    | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT
    | SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT;
