Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File: audio.h
//
//--------------------------------------------------------------------------
//===========================================================================
// WAVE (PCM)
//===========================================================================
#define STATIC_KSPROPSETID_Wave\
0x924e54b0, 0x630f, 0x11cf, 0xad, 0xa7, 0x08, 0x00, 0x3e, 0x30, 0x49, 0x4a #if defined(__cplusplus) && _MSC_VER >= 1100
struct __declspec(uuid("924e54b0-630f-11cf-ada7-08003e30494a")) KSPROPSETID_Wave; #else
DEFINE_GUIDEX(KSPROPSETID_Wave); #endif
#define KSPROPERTY_WAVE_COMPATIBLE_CAPABILITIES 0x00000001
#define KSPROPERTY_WAVE_INPUT_CAPABILITIES 0x00000002
#define KSPROPERTY_WAVE_OUTPUT_CAPABILITIES 0x00000003
#define KSPROPERTY_WAVE_BUFFER 0x00000004
#define KSPROPERTY_WAVE_FREQUENCY 0x00000005
#define KSPROPERTY_WAVE_VOLUME 0x00000006
#define KSPROPERTY_WAVE_PAN 0x00000007
#define KSPROPERTY_WAVE_POSITION 0x00000008
typedef struct { ULONG ulDeviceType; } KSWAVE_COMPATCAPS, *PKSWAVE_COMPATCAPS;
#define KSWAVE_COMPATCAPS_INPUT 0x00000000
#define KSWAVE_COMPATCAPS_OUTPUT 0x00000001
typedef struct { ULONG MaximumChannelsPerConnection; ULONG MinimumBitsPerSample; ULONG MaximumBitsPerSample; ULONG MinimumSampleFrequency; ULONG MaximumSampleFrequency; ULONG TotalConnections; ULONG ActiveConnections; } KSWAVE_INPUT_CAPABILITIES, *PKSWAVE_INPUT_CAPABILITIES;
typedef struct { ULONG MaximumChannelsPerConnection; ULONG MinimumBitsPerSample; ULONG MaximumBitsPerSample; ULONG MinimumSampleFrequency; ULONG MaximumSampleFrequency; ULONG TotalConnections; ULONG StaticConnections; ULONG StreamingConnections; ULONG ActiveConnections; ULONG ActiveStaticConnections; ULONG ActiveStreamingConnections; ULONG Total3DConnections; ULONG Static3DConnections; ULONG Streaming3DConnections; ULONG Active3DConnections; ULONG ActiveStatic3DConnections; ULONG ActiveStreaming3DConnections; ULONG TotalSampleMemory; ULONG FreeSampleMemory; ULONG LargestFreeContiguousSampleMemory; } KSWAVE_OUTPUT_CAPABILITIES, *PKSWAVE_OUTPUT_CAPABILITIES;
typedef struct { LONG Channel; LONG Level; } KSWAVE_VOLUME, *PKSWAVE_VOLUME;
typedef struct { LONG LeftLevel ; LONG RightLevel ; } KSWAVE_PAN, *PKSWAVE_PAN
//===========================================================================
// MIDI
//===========================================================================
DEFINE_GUIDEX(KSPROPSETID_MIDI);
#define KSPROPERTY_MIDI_INPUT_CAPABILITIES 0x00000001
#define KSPROPERTY_MIDI_OUTPUT_CAPABILITIES 0x00000002
#define KSPROPERTY_MIDI_VOLUME 0x00000003
#define KSPROPERTY_MIDI_PAN 0x00000004
typedef struct { // TBD
} KSMIDI_INPUT_CAPABILITIES, *PKSMIDI_INPUT_CAPABILITIES ;
typedef struct { ULONG Voices ; ULONG Notes ; ULONG Channel ; } KSMIDI_OUTPUT_CAPABILITIES, *PKSMIDI_OUTPUT_CAPABILITIES ;
typedef struct { ULONG Level ; } KSMIDI_VOLUME, *PKSMIDI_VOLUME ;
typedef KSWAVE_PAN KSMIDI_PAN, *PKSMIDI_PAN ;
//===========================================================================
// AC3
//===========================================================================
DEFINE_GUIDEX(KSPROPSETID_AC3);
#define KSPROPERTY_AC3_INPUT_CAPABILITIES 0x00000001
#define KSPROPERTY_AC3_OUTPUT_CAPABILITIES 0x00000002
#define KSPROPERTY_AC3_VOLUME 0x00000003
typedef struct { } KSAC3_OUTPUT_CAPABILITIES, *PKSAC3_OUTPUT_CAPABILITIES ;
typedef struct { // TDB
} KSAC3_VOLUME, *PKSAC3_VOLUME ;
//===========================================================================
//===========================================================================
|