Spaces:
Runtime error
Runtime error
/** | |
* This file has no copyright assigned and is placed in the Public Domain. | |
* This file is part of the w64 mingw-runtime package. | |
* No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
*/ | |
typedef struct { | |
KSPROPERTY Property; | |
KSMULTIPLE_ITEM MultipleItem; | |
} KSMULTIPLE_DATA_PROP,*PKSMULTIPLE_DATA_PROP; | |
DEFINE_GUIDSTRUCT("05908040-3246-11D0-A5D6-28DB04C10000",KSMEDIUMSETID_MidiBus); | |
DEFINE_GUIDSTRUCT("A18C15EC-CE43-11D0-ABE7-00A0C9223196",KSMEDIUMSETID_VPBus); | |
DEFINE_GUIDSTRUCT("3A13EB40-30A7-11D0-A5D6-28DB04C10000",KSINTERFACESETID_Media); | |
typedef enum { | |
KSINTERFACE_MEDIA_MUSIC, | |
KSINTERFACE_MEDIA_WAVE_BUFFERED, | |
KSINTERFACE_MEDIA_WAVE_QUEUED | |
} KSINTERFACE_MEDIA; | |
DEFINE_GUIDSTRUCT("8F1275F0-26E9-4264-BA4D-39FFF01D94AA",KSCOMPONENTID_USBAUDIO); | |
DEFINE_GUIDSTRUCT("DFF21BE1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_MICROPHONE); | |
DEFINE_GUIDSTRUCT("DFF21BE2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DESKTOP_MICROPHONE); | |
DEFINE_GUIDSTRUCT("DFF21BE3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_PERSONAL_MICROPHONE); | |
DEFINE_GUIDSTRUCT("DFF21BE4-F70F-11D0-B917-00A0C9223196",KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE); | |
DEFINE_GUIDSTRUCT("DFF21BE5-F70F-11D0-B917-00A0C9223196",KSNODETYPE_MICROPHONE_ARRAY); | |
DEFINE_GUIDSTRUCT("DFF21BE6-F70F-11D0-B917-00A0C9223196",KSNODETYPE_PROCESSING_MICROPHONE_ARRAY); | |
DEFINE_GUIDSTRUCT("830a44f2-a32d-476b-be97-42845673b35a",KSCATEGORY_MICROPHONE_ARRAY_PROCESSOR); | |
DEFINE_GUIDSTRUCT("DFF21CE1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_SPEAKER); | |
DEFINE_GUIDSTRUCT("DFF21CE2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_HEADPHONES); | |
DEFINE_GUIDSTRUCT("DFF21CE3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF21CE4-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DESKTOP_SPEAKER); | |
DEFINE_GUIDSTRUCT("DFF21CE5-F70F-11D0-B917-00A0C9223196",KSNODETYPE_ROOM_SPEAKER); | |
DEFINE_GUIDSTRUCT("DFF21CE6-F70F-11D0-B917-00A0C9223196",KSNODETYPE_COMMUNICATION_SPEAKER); | |
DEFINE_GUIDSTRUCT("DFF21CE7-F70F-11D0-B917-00A0C9223196",KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER); | |
DEFINE_GUIDSTRUCT("DFF21DE1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_HANDSET); | |
DEFINE_GUIDSTRUCT("DFF21DE2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_HEADSET); | |
DEFINE_GUIDSTRUCT("DFF21DE3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION); | |
DEFINE_GUIDSTRUCT("DFF21DE4-F70F-11D0-B917-00A0C9223196",KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE); | |
DEFINE_GUIDSTRUCT("DFF21DE5-F70F-11D0-B917-00A0C9223196",KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE); | |
DEFINE_GUIDSTRUCT("DFF21EE1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_PHONE_LINE); | |
DEFINE_GUIDSTRUCT("DFF21EE2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_TELEPHONE); | |
DEFINE_GUIDSTRUCT("DFF21EE3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DOWN_LINE_PHONE); | |
DEFINE_GUIDSTRUCT("DFF21FE1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_ANALOG_CONNECTOR); | |
DEFINE_GUIDSTRUCT("DFF21FE2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DIGITAL_AUDIO_INTERFACE); | |
DEFINE_GUIDSTRUCT("DFF21FE3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_LINE_CONNECTOR); | |
DEFINE_GUIDSTRUCT("DFF21FE4-F70F-11D0-B917-00A0C9223196",KSNODETYPE_LEGACY_AUDIO_CONNECTOR); | |
DEFINE_GUIDSTRUCT("DFF21FE5-F70F-11D0-B917-00A0C9223196",KSNODETYPE_SPDIF_INTERFACE); | |
DEFINE_GUIDSTRUCT("DFF21FE6-F70F-11D0-B917-00A0C9223196",KSNODETYPE_1394_DA_STREAM); | |
DEFINE_GUIDSTRUCT("DFF21FE7-F70F-11D0-B917-00A0C9223196",KSNODETYPE_1394_DV_STREAM_SOUNDTRACK); | |
DEFINE_GUIDSTRUCT("DFF220E1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE); | |
DEFINE_GUIDSTRUCT("DFF220E2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_EQUALIZATION_NOISE); | |
DEFINE_GUIDSTRUCT("DFF220E3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_CD_PLAYER); | |
DEFINE_GUIDSTRUCT("DFF220E4-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE); | |
DEFINE_GUIDSTRUCT("DFF220E5-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE); | |
DEFINE_GUIDSTRUCT("DFF220E6-F70F-11D0-B917-00A0C9223196",KSNODETYPE_MINIDISK); | |
DEFINE_GUIDSTRUCT("DFF220E7-F70F-11D0-B917-00A0C9223196",KSNODETYPE_ANALOG_TAPE); | |
DEFINE_GUIDSTRUCT("DFF220E8-F70F-11D0-B917-00A0C9223196",KSNODETYPE_PHONOGRAPH); | |
DEFINE_GUIDSTRUCT("DFF220E9-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VCR_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220EA-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_DISC_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220EB-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DVD_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220EC-F70F-11D0-B917-00A0C9223196",KSNODETYPE_TV_TUNER_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220ED-F70F-11D0-B917-00A0C9223196",KSNODETYPE_SATELLITE_RECEIVER_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220EE-F70F-11D0-B917-00A0C9223196",KSNODETYPE_CABLE_TUNER_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220EF-F70F-11D0-B917-00A0C9223196",KSNODETYPE_DSS_AUDIO); | |
DEFINE_GUIDSTRUCT("DFF220F0-F70F-11D0-B917-00A0C9223196",KSNODETYPE_RADIO_RECEIVER); | |
DEFINE_GUIDSTRUCT("DFF220F1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_RADIO_TRANSMITTER); | |
DEFINE_GUIDSTRUCT("DFF220F2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_MULTITRACK_RECORDER); | |
DEFINE_GUIDSTRUCT("DFF220F3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_SYNTHESIZER); | |
DEFINE_GUIDSTRUCT("423274A0-8B81-11D1-A050-0000F8004788",KSNODETYPE_SWSYNTH); | |
DEFINE_GUIDSTRUCT("CB9BEFA0-A251-11D1-A050-0000F8004788",KSNODETYPE_SWMIDI); | |
DEFINE_GUIDSTRUCT("FFBB6E3F-CCFE-4D84-90D9-421418B03A8E",KSNODETYPE_DRM_DESCRAMBLE); | |
DEFINE_GUIDSTRUCT("6994AD04-93EF-11D0-A3CC-00A0C9223196",KSCATEGORY_AUDIO); | |
DEFINE_GUIDSTRUCT("6994AD05-93EF-11D0-A3CC-00A0C9223196",KSCATEGORY_VIDEO); | |
/* Added for Vista and later */ | |
DEFINE_GUIDSTRUCT("EB115FFC-10C8-4964-831D-6DCB02E6F23F", KSCATEGORY_REALTIME); | |
DEFINE_GUIDSTRUCT("6994AD06-93EF-11D0-A3CC-00A0C9223196",KSCATEGORY_TEXT); | |
DEFINE_GUIDSTRUCT("67C9CC3C-69C4-11D2-8759-00A0C9223196",KSCATEGORY_NETWORK); | |
DEFINE_GUIDSTRUCT("DDA54A40-1E4C-11D1-A050-405705C10000",KSCATEGORY_TOPOLOGY); | |
DEFINE_GUIDSTRUCT("3503EAC4-1F26-11D1-8AB0-00A0C9223196",KSCATEGORY_VIRTUAL); | |
DEFINE_GUIDSTRUCT("BF963D80-C559-11D0-8A2B-00A0C9255AC1",KSCATEGORY_ACOUSTIC_ECHO_CANCEL); | |
DEFINE_GUIDSTRUCT("A7C7A5B1-5AF3-11D1-9CED-00A024BF0407",KSCATEGORY_SYSAUDIO); | |
DEFINE_GUIDSTRUCT("3E227E76-690D-11D2-8161-0000F8775BF1",KSCATEGORY_WDMAUD); | |
DEFINE_GUIDSTRUCT("9BAF9572-340C-11D3-ABDC-00A0C90AB16F",KSCATEGORY_AUDIO_GFX); | |
DEFINE_GUIDSTRUCT("9EA331FA-B91B-45F8-9285-BD2BC77AFCDE",KSCATEGORY_AUDIO_SPLITTER); | |
DEFINE_GUIDSTRUCT("FBF6F530-07B9-11D2-A71E-0000F8004788",KSCATEGORY_AUDIO_DEVICE); | |
DEFINE_GUIDSTRUCT("D6C5066E-72C1-11D2-9755-0000F8004788",KSCATEGORY_PREFERRED_WAVEOUT_DEVICE); | |
DEFINE_GUIDSTRUCT("D6C50671-72C1-11D2-9755-0000F8004788",KSCATEGORY_PREFERRED_WAVEIN_DEVICE); | |
DEFINE_GUIDSTRUCT("D6C50674-72C1-11D2-9755-0000F8004788",KSCATEGORY_PREFERRED_MIDIOUT_DEVICE); | |
DEFINE_GUIDSTRUCT("47A4FA20-A251-11D1-A050-0000F8004788",KSCATEGORY_WDMAUD_USE_PIN_NAME); | |
DEFINE_GUIDSTRUCT("74f3aea8-9768-11d1-8e07-00a0c95ec22e",KSCATEGORY_ESCALANTE_PLATFORM_DRIVER); | |
DEFINE_GUIDSTRUCT("73646976-0000-0010-8000-00aa00389b71",KSDATAFORMAT_TYPE_VIDEO); | |
DEFINE_GUIDSTRUCT("73647561-0000-0010-8000-00aa00389b71",KSDATAFORMAT_TYPE_AUDIO); | |
DEFINE_GUIDSTRUCT("73747874-0000-0010-8000-00aa00389b71",KSDATAFORMAT_TYPE_TEXT); | |
DEFINE_GUIDSTRUCT("00000000-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_WAVEFORMATEX); | |
DEFINE_GUIDSTRUCT("6dba3190-67bd-11cf-a0f7-0020afd156e4",KSDATAFORMAT_SUBTYPE_ANALOG); | |
DEFINE_GUIDSTRUCT("00000001-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_PCM); | |
DEFINE_GUIDSTRUCT("00000003-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_IEEE_FLOAT); | |
DEFINE_GUIDSTRUCT("00000009-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_DRM); | |
DEFINE_GUIDSTRUCT("00000006-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_ALAW); | |
DEFINE_GUIDSTRUCT("00000007-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_MULAW); | |
DEFINE_GUIDSTRUCT("00000002-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_ADPCM); | |
DEFINE_GUIDSTRUCT("00000050-0000-0010-8000-00aa00389b71",KSDATAFORMAT_SUBTYPE_MPEG); | |
DEFINE_GUIDSTRUCT("AD98D184-AAC3-11D0-A41C-00A0C9223196",KSDATAFORMAT_SPECIFIER_VC_ID); | |
DEFINE_GUIDSTRUCT("05589f81-c356-11ce-bf01-00aa0055595a",KSDATAFORMAT_SPECIFIER_WAVEFORMATEX); | |
DEFINE_GUIDSTRUCT("518590a2-a184-11d0-8522-00c04fd9baf3",KSDATAFORMAT_SPECIFIER_DSOUND); | |
typedef struct { | |
KSDATAFORMAT DataFormat; | |
WAVEFORMATEX WaveFormatEx; | |
} KSDATAFORMAT_WAVEFORMATEX,*PKSDATAFORMAT_WAVEFORMATEX; | |
typedef struct { | |
WAVEFORMATEX Format; | |
union { | |
WORD wValidBitsPerSample; | |
WORD wSamplesPerBlock; | |
WORD wReserved; | |
} Samples; | |
DWORD dwChannelMask; | |
GUID SubFormat; | |
} WAVEFORMATEXTENSIBLE,*PWAVEFORMATEXTENSIBLE; | |
typedef struct { | |
ULONG Flags; | |
ULONG Control; | |
WAVEFORMATEX WaveFormatEx; | |
} KSDSOUND_BUFFERDESC,*PKSDSOUND_BUFFERDESC; | |
typedef struct { | |
KSDATAFORMAT DataFormat; | |
KSDSOUND_BUFFERDESC BufferDesc; | |
} KSDATAFORMAT_DSOUND,*PKSDATAFORMAT_DSOUND; | |
typedef struct { | |
DWORDLONG PlayOffset; | |
DWORDLONG WriteOffset; | |
} KSAUDIO_POSITION,*PKSAUDIO_POSITION; | |
typedef struct _DS3DVECTOR { | |
__MINGW_EXTENSION union { | |
FLOAT x; | |
FLOAT dvX; | |
}; | |
__MINGW_EXTENSION union { | |
FLOAT y; | |
FLOAT dvY; | |
}; | |
__MINGW_EXTENSION union { | |
FLOAT z; | |
FLOAT dvZ; | |
}; | |
} DS3DVECTOR,*PDS3DVECTOR; | |
DEFINE_GUIDSTRUCT("437b3414-d060-11d0-8583-00c04fd9baf3",KSPROPSETID_DirectSound3DListener); | |
typedef enum { | |
KSPROPERTY_DIRECTSOUND3DLISTENER_ALL, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_POSITION, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_VELOCITY, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_ORIENTATION, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_DISTANCEFACTOR, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_ROLLOFFFACTOR, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_DOPPLERFACTOR, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_BATCH, | |
KSPROPERTY_DIRECTSOUND3DLISTENER_ALLOCATION | |
} KSPROPERTY_DIRECTSOUND3DLISTENER; | |
typedef struct { | |
DS3DVECTOR Position; | |
DS3DVECTOR Velocity; | |
DS3DVECTOR OrientFront; | |
DS3DVECTOR OrientTop; | |
FLOAT DistanceFactor; | |
FLOAT RolloffFactor; | |
FLOAT DopplerFactor; | |
} KSDS3D_LISTENER_ALL,*PKSDS3D_LISTENER_ALL; | |
typedef struct { | |
DS3DVECTOR Front; | |
DS3DVECTOR Top; | |
} KSDS3D_LISTENER_ORIENTATION,*PKSDS3D_LISTENER_ORIENTATION; | |
DEFINE_GUIDSTRUCT("437b3411-d060-11d0-8583-00c04fd9baf3",KSPROPSETID_DirectSound3DBuffer); | |
typedef enum { | |
KSPROPERTY_DIRECTSOUND3DBUFFER_ALL, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_POSITION, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_VELOCITY, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEANGLES, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEORIENTATION, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEOUTSIDEVOLUME, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_MINDISTANCE, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_MAXDISTANCE, | |
KSPROPERTY_DIRECTSOUND3DBUFFER_MODE | |
} KSPROPERTY_DIRECTSOUND3DBUFFER; | |
typedef struct { | |
DS3DVECTOR Position; | |
DS3DVECTOR Velocity; | |
ULONG InsideConeAngle; | |
ULONG OutsideConeAngle; | |
DS3DVECTOR ConeOrientation; | |
LONG ConeOutsideVolume; | |
FLOAT MinDistance; | |
FLOAT MaxDistance; | |
ULONG Mode; | |
} KSDS3D_BUFFER_ALL,*PKSDS3D_BUFFER_ALL; | |
typedef struct { | |
ULONG InsideConeAngle; | |
ULONG OutsideConeAngle; | |
} KSDS3D_BUFFER_CONE_ANGLES,*PKSDS3D_BUFFER_CONE_ANGLES; | |
typedef struct { | |
ULONG Size; | |
ULONG Enabled; | |
WINBOOL SwapChannels; | |
WINBOOL ZeroAzimuth; | |
WINBOOL CrossFadeOutput; | |
ULONG FilterSize; | |
} KSDS3D_HRTF_PARAMS_MSG,*PKSDS3D_HRTF_PARAMS_MSG; | |
typedef enum { | |
FULL_FILTER, | |
LIGHT_FILTER, | |
KSDS3D_FILTER_QUALITY_COUNT | |
} KSDS3D_HRTF_FILTER_QUALITY; | |
typedef struct { | |
ULONG Size; | |
KSDS3D_HRTF_FILTER_QUALITY Quality; | |
FLOAT SampleRate; | |
ULONG MaxFilterSize; | |
ULONG FilterTransientMuteLength; | |
ULONG FilterOverlapBufferLength; | |
ULONG OutputOverlapBufferLength; | |
ULONG Reserved; | |
} KSDS3D_HRTF_INIT_MSG,*PKSDS3D_HRTF_INIT_MSG; | |
typedef enum { | |
FLOAT_COEFF, | |
SHORT_COEFF, | |
KSDS3D_COEFF_COUNT | |
} KSDS3D_HRTF_COEFF_FORMAT; | |
typedef enum { | |
DIRECT_FORM, | |
CASCADE_FORM, | |
KSDS3D_FILTER_METHOD_COUNT | |
} KSDS3D_HRTF_FILTER_METHOD; | |
typedef enum { | |
DS3D_HRTF_VERSION_1 | |
} KSDS3D_HRTF_FILTER_VERSION; | |
typedef struct { | |
KSDS3D_HRTF_FILTER_METHOD FilterMethod; | |
KSDS3D_HRTF_COEFF_FORMAT CoeffFormat; | |
KSDS3D_HRTF_FILTER_VERSION Version; | |
ULONG Reserved; | |
} KSDS3D_HRTF_FILTER_FORMAT_MSG,*PKSDS3D_HRTF_FILTER_FORMAT_MSG; | |
DEFINE_GUIDSTRUCT("b66decb0-a083-11d0-851e-00c04fd9baf3",KSPROPSETID_Hrtf3d); | |
typedef enum { | |
KSPROPERTY_HRTF3D_PARAMS = 0, | |
KSPROPERTY_HRTF3D_INITIALIZE, | |
KSPROPERTY_HRTF3D_FILTER_FORMAT | |
} KSPROPERTY_HRTF3D; | |
typedef struct { | |
LONG Channel; | |
FLOAT VolSmoothScale; | |
FLOAT TotalDryAttenuation; | |
FLOAT TotalWetAttenuation; | |
LONG SmoothFrequency; | |
LONG Delay; | |
} KSDS3D_ITD_PARAMS,*PKSDS3D_ITD_PARAMS; | |
typedef struct { | |
ULONG Enabled; | |
KSDS3D_ITD_PARAMS LeftParams; | |
KSDS3D_ITD_PARAMS RightParams; | |
ULONG Reserved; | |
} KSDS3D_ITD_PARAMS_MSG,*PKSDS3D_ITD_PARAMS_MSG; | |
DEFINE_GUIDSTRUCT("6429f090-9fd9-11d0-a75b-00a0c90365e3",KSPROPSETID_Itd3d); | |
typedef enum { | |
KSPROPERTY_ITD3D_PARAMS = 0 | |
} KSPROPERTY_ITD3D; | |
typedef struct { | |
KSDATARANGE DataRange; | |
ULONG MaximumChannels; | |
ULONG MinimumBitsPerSample; | |
ULONG MaximumBitsPerSample; | |
ULONG MinimumSampleFrequency; | |
ULONG MaximumSampleFrequency; | |
} KSDATARANGE_AUDIO,*PKSDATARANGE_AUDIO; | |
DEFINE_GUIDSTRUCT("4995DAEE-9EE6-11D0-A40E-00A0C9223196",KSDATAFORMAT_SUBTYPE_RIFF); | |
DEFINE_GUIDSTRUCT("e436eb8b-524f-11ce-9f53-0020af0ba770",KSDATAFORMAT_SUBTYPE_RIFFWAVE); | |
DEFINE_GUIDSTRUCT("07BA150E-E2B1-11D0-AC17-00A0C9223196",KSPROPSETID_Bibliographic); | |
typedef enum { | |
KSPROPERTY_BIBLIOGRAPHIC_LEADER = 'RDL ', | |
KSPROPERTY_BIBLIOGRAPHIC_LCCN = '010 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ISBN = '020 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ISSN = '220 ', | |
KSPROPERTY_BIBLIOGRAPHIC_CATALOGINGSOURCE = '040 ', | |
KSPROPERTY_BIBLIOGRAPHIC_MAINPERSONALNAME = '001 ', | |
KSPROPERTY_BIBLIOGRAPHIC_MAINCORPORATEBODY = '011 ', | |
KSPROPERTY_BIBLIOGRAPHIC_MAINMEETINGNAME = '111 ', | |
KSPROPERTY_BIBLIOGRAPHIC_MAINUNIFORMTITLE = '031 ', | |
KSPROPERTY_BIBLIOGRAPHIC_UNIFORMTITLE = '042 ', | |
KSPROPERTY_BIBLIOGRAPHIC_TITLESTATEMENT = '542 ', | |
KSPROPERTY_BIBLIOGRAPHIC_VARYINGFORMTITLE = '642 ', | |
KSPROPERTY_BIBLIOGRAPHIC_PUBLICATION = '062 ', | |
KSPROPERTY_BIBLIOGRAPHIC_PHYSICALDESCRIPTION = '003 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYTITLE = '044 ', | |
KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENT = '094 ', | |
KSPROPERTY_BIBLIOGRAPHIC_GENERALNOTE = '005 ', | |
KSPROPERTY_BIBLIOGRAPHIC_BIBLIOGRAPHYNOTE = '405 ', | |
KSPROPERTY_BIBLIOGRAPHIC_CONTENTSNOTE = '505 ', | |
KSPROPERTY_BIBLIOGRAPHIC_CREATIONCREDIT = '805 ', | |
KSPROPERTY_BIBLIOGRAPHIC_CITATION = '015 ', | |
KSPROPERTY_BIBLIOGRAPHIC_PARTICIPANT = '115 ', | |
KSPROPERTY_BIBLIOGRAPHIC_SUMMARY = '025 ', | |
KSPROPERTY_BIBLIOGRAPHIC_TARGETAUDIENCE = '125 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDFORMAVAILABLE = '035 ', | |
KSPROPERTY_BIBLIOGRAPHIC_SYSTEMDETAILS = '835 ', | |
KSPROPERTY_BIBLIOGRAPHIC_AWARDS = '685 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYPERSONALNAME = '006 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYTOPICALTERM = '056 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYGEOGRAPHIC = '156 ', | |
KSPROPERTY_BIBLIOGRAPHIC_INDEXTERMGENRE = '556 ', | |
KSPROPERTY_BIBLIOGRAPHIC_INDEXTERMCURRICULUM = '856 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYUNIFORMTITLE = '037 ', | |
KSPROPERTY_BIBLIOGRAPHIC_ADDEDENTRYRELATED = '047 ', | |
KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENTPERSONALNAME = '008 ', | |
KSPROPERTY_BIBLIOGRAPHIC_SERIESSTATEMENTUNIFORMTITLE = '038 ' | |
} KSPROPERTY_BIBLIOGRAPHIC; | |
DEFINE_GUIDSTRUCT("45FFAAA1-6E1B-11D0-BCF2-444553540000",KSPROPSETID_TopologyNode); | |
typedef enum { | |
KSPROPERTY_TOPOLOGYNODE_ENABLE = 1, | |
KSPROPERTY_TOPOLOGYNODE_RESET | |
} KSPROPERTY_TOPOLOGYNODE; | |
DEFINE_GUIDSTRUCT("A855A48C-2F78-4729-9051-1968746B9EEF",KSPROPSETID_RtAudio); | |
typedef enum { | |
KSPROPERTY_RTAUDIO_GETPOSITIONFUNCTION, | |
/* Added for Vista and later */ | |
KSPROPERTY_RTAUDIO_BUFFER, | |
KSPROPERTY_RTAUDIO_HWLATENCY, | |
KSPROPERTY_RTAUDIO_POSITIONREGISTER, | |
KSPROPERTY_RTAUDIO_CLOCKREGISTER, | |
KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION, | |
KSPROPERTY_RTAUDIO_REGISTER_NOTIFICATION_EVENT, | |
KSPROPERTY_RTAUDIO_UNREGISTER_NOTIFICATION_EVENT | |
} KSPROPERTY_RTAUDIO; | |
DEFINE_GUIDSTRUCT("2F2C8DDD-4198-4fac-BA29-61BB05B7DE06",KSPROPSETID_DrmAudioStream); | |
typedef enum { | |
KSPROPERTY_DRMAUDIOSTREAM_CONTENTID | |
} KSPROPERTY_DRMAUDIOSTREAM; | |
DEFINE_GUIDSTRUCT("45FFAAA0-6E1B-11D0-BCF2-444553540000",KSPROPSETID_Audio); | |
typedef enum { | |
KSPROPERTY_AUDIO_LATENCY = 1, | |
KSPROPERTY_AUDIO_COPY_PROTECTION, | |
KSPROPERTY_AUDIO_CHANNEL_CONFIG, | |
KSPROPERTY_AUDIO_VOLUMELEVEL, | |
KSPROPERTY_AUDIO_POSITION, | |
KSPROPERTY_AUDIO_DYNAMIC_RANGE, | |
KSPROPERTY_AUDIO_QUALITY, | |
KSPROPERTY_AUDIO_SAMPLING_RATE, | |
KSPROPERTY_AUDIO_DYNAMIC_SAMPLING_RATE, | |
KSPROPERTY_AUDIO_MIX_LEVEL_TABLE, | |
KSPROPERTY_AUDIO_MIX_LEVEL_CAPS, | |
KSPROPERTY_AUDIO_MUX_SOURCE, | |
KSPROPERTY_AUDIO_MUTE, | |
KSPROPERTY_AUDIO_BASS, | |
KSPROPERTY_AUDIO_MID, | |
KSPROPERTY_AUDIO_TREBLE, | |
KSPROPERTY_AUDIO_BASS_BOOST, | |
KSPROPERTY_AUDIO_EQ_LEVEL, | |
KSPROPERTY_AUDIO_NUM_EQ_BANDS, | |
KSPROPERTY_AUDIO_EQ_BANDS, | |
KSPROPERTY_AUDIO_AGC, | |
KSPROPERTY_AUDIO_DELAY, | |
KSPROPERTY_AUDIO_LOUDNESS, | |
KSPROPERTY_AUDIO_WIDE_MODE, | |
KSPROPERTY_AUDIO_WIDENESS, | |
KSPROPERTY_AUDIO_REVERB_LEVEL, | |
KSPROPERTY_AUDIO_CHORUS_LEVEL, | |
KSPROPERTY_AUDIO_DEV_SPECIFIC, | |
KSPROPERTY_AUDIO_DEMUX_DEST, | |
KSPROPERTY_AUDIO_STEREO_ENHANCE, | |
KSPROPERTY_AUDIO_MANUFACTURE_GUID, | |
KSPROPERTY_AUDIO_PRODUCT_GUID, | |
KSPROPERTY_AUDIO_CPU_RESOURCES, | |
KSPROPERTY_AUDIO_STEREO_SPEAKER_GEOMETRY, | |
KSPROPERTY_AUDIO_SURROUND_ENCODE, | |
KSPROPERTY_AUDIO_3D_INTERFACE, | |
KSPROPERTY_AUDIO_PEAKMETER, | |
KSPROPERTY_AUDIO_ALGORITHM_INSTANCE, | |
KSPROPERTY_AUDIO_FILTER_STATE, | |
KSPROPERTY_AUDIO_PREFERRED_STATUS | |
} KSPROPERTY_AUDIO; | |
typedef struct { | |
WINBOOL fCopyrighted; | |
WINBOOL fOriginal; | |
} KSAUDIO_COPY_PROTECTION,*PKSAUDIO_COPY_PROTECTION; | |
typedef struct { | |
LONG ActiveSpeakerPositions; | |
} KSAUDIO_CHANNEL_CONFIG,*PKSAUDIO_CHANNEL_CONFIG; | |
typedef struct { | |
ULONG QuietCompression; | |
ULONG LoudCompression; | |
} KSAUDIO_DYNAMIC_RANGE,*PKSAUDIO_DYNAMIC_RANGE; | |
typedef struct { | |
WINBOOL Mute; | |
LONG Level; | |
} KSAUDIO_MIXLEVEL,*PKSAUDIO_MIXLEVEL; | |
typedef struct { | |
WINBOOL Mute; | |
LONG Minimum; | |
LONG Maximum; | |
LONG Reset; | |
} KSAUDIO_MIX_CAPS,*PKSAUDIO_MIX_CAPS; | |
typedef struct { | |
ULONG InputChannels; | |
ULONG OutputChannels; | |
KSAUDIO_MIX_CAPS Capabilities[1]; | |
} KSAUDIO_MIXCAP_TABLE,*PKSAUDIO_MIXCAP_TABLE; | |
typedef enum { | |
SE_TECH_NONE, | |
SE_TECH_ANALOG_DEVICES_PHAT, | |
SE_TECH_CREATIVE, | |
SE_TECH_NATIONAL_SEMI, | |
SE_TECH_YAMAHA_YMERSION, | |
SE_TECH_BBE, | |
SE_TECH_CRYSTAL_SEMI, | |
SE_TECH_QSOUND_QXPANDER, | |
SE_TECH_SPATIALIZER, | |
SE_TECH_SRS, | |
SE_TECH_PLATFORM_TECH, | |
SE_TECH_AKM, | |
SE_TECH_AUREAL, | |
SE_TECH_AZTECH, | |
SE_TECH_BINAURA, | |
SE_TECH_ESS_TECH, | |
SE_TECH_HARMAN_VMAX, | |
SE_TECH_NVIDEA, | |
SE_TECH_PHILIPS_INCREDIBLE, | |
SE_TECH_TEXAS_INST, | |
SE_TECH_VLSI_TECH | |
} SE_TECHNIQUE; | |
typedef struct { | |
SE_TECHNIQUE Technique; | |
ULONG Center; | |
ULONG Depth; | |
ULONG Reserved; | |
} KSAUDIO_STEREO_ENHANCE,*PKSAUDIO_STEREO_ENHANCE; | |
typedef enum { | |
KSPROPERTY_SYSAUDIO_NORMAL_DEFAULT = 0, | |
KSPROPERTY_SYSAUDIO_PLAYBACK_DEFAULT, | |
KSPROPERTY_SYSAUDIO_RECORD_DEFAULT, | |
KSPROPERTY_SYSAUDIO_MIDI_DEFAULT, | |
KSPROPERTY_SYSAUDIO_MIXER_DEFAULT | |
} KSPROPERTY_SYSAUDIO_DEFAULT_TYPE; | |
typedef struct { | |
WINBOOL Enable; | |
KSPROPERTY_SYSAUDIO_DEFAULT_TYPE DeviceType; | |
ULONG Flags; | |
ULONG Reserved; | |
} KSAUDIO_PREFERRED_STATUS,*PKSAUDIO_PREFERRED_STATUS; | |
DEFINE_GUIDSTRUCT("507AE360-C554-11D0-8A2B-00A0C9255AC1",KSNODETYPE_DAC); | |
DEFINE_GUIDSTRUCT("4D837FE0-C555-11D0-8A2B-00A0C9255AC1",KSNODETYPE_ADC); | |
DEFINE_GUIDSTRUCT("9DB7B9E0-C555-11D0-8A2B-00A0C9255AC1",KSNODETYPE_SRC); | |
DEFINE_GUIDSTRUCT("E573ADC0-C555-11D0-8A2B-00A0C9255AC1",KSNODETYPE_SUPERMIX); | |
DEFINE_GUIDSTRUCT("2CEAF780-C556-11D0-8A2B-00A0C9255AC1",KSNODETYPE_MUX); | |
DEFINE_GUIDSTRUCT("C0EB67D4-E807-11D0-958A-00C04FB925D3",KSNODETYPE_DEMUX); | |
DEFINE_GUIDSTRUCT("DA441A60-C556-11D0-8A2B-00A0C9255AC1",KSNODETYPE_SUM); | |
DEFINE_GUIDSTRUCT("02B223C0-C557-11D0-8A2B-00A0C9255AC1",KSNODETYPE_MUTE); | |
DEFINE_GUIDSTRUCT("3A5ACC00-C557-11D0-8A2B-00A0C9255AC1",KSNODETYPE_VOLUME); | |
DEFINE_GUIDSTRUCT("7607E580-C557-11D0-8A2B-00A0C9255AC1",KSNODETYPE_TONE); | |
DEFINE_GUIDSTRUCT("9D41B4A0-C557-11D0-8A2B-00A0C9255AC1",KSNODETYPE_EQUALIZER); | |
DEFINE_GUIDSTRUCT("E88C9BA0-C557-11D0-8A2B-00A0C9255AC1",KSNODETYPE_AGC); | |
DEFINE_GUIDSTRUCT("E07F903F-62FD-4e60-8CDD-DEA7236665B5",KSNODETYPE_NOISE_SUPPRESS); | |
DEFINE_GUIDSTRUCT("144981E0-C558-11D0-8A2B-00A0C9255AC1",KSNODETYPE_DELAY); | |
DEFINE_GUIDSTRUCT("41887440-C558-11D0-8A2B-00A0C9255AC1",KSNODETYPE_LOUDNESS); | |
DEFINE_GUIDSTRUCT("831C2C80-C558-11D0-8A2B-00A0C9255AC1",KSNODETYPE_PROLOGIC_DECODER); | |
DEFINE_GUIDSTRUCT("A9E69800-C558-11D0-8A2B-00A0C9255AC1",KSNODETYPE_STEREO_WIDE); | |
DEFINE_GUIDSTRUCT("AF6878AC-E83F-11D0-958A-00C04FB925D3",KSNODETYPE_STEREO_ENHANCE); | |
DEFINE_GUIDSTRUCT("EF0328E0-C558-11D0-8A2B-00A0C9255AC1",KSNODETYPE_REVERB); | |
DEFINE_GUIDSTRUCT("20173F20-C559-11D0-8A2B-00A0C9255AC1",KSNODETYPE_CHORUS); | |
DEFINE_GUIDSTRUCT("55515860-C559-11D0-8A2B-00A0C9255AC1",KSNODETYPE_3D_EFFECTS); | |
DEFINE_GUIDSTRUCT("1C22C56D-9879-4f5b-A389-27996DDC2810",KSALGORITHMINSTANCE_SYSTEM_ACOUSTIC_ECHO_CANCEL); | |
DEFINE_GUIDSTRUCT("5AB0882E-7274-4516-877D-4EEE99BA4FD0",KSALGORITHMINSTANCE_SYSTEM_NOISE_SUPPRESS); | |
DEFINE_GUIDSTRUCT("950E55B9-877C-4c67-BE08-E47B5611130A",KSALGORITHMINSTANCE_SYSTEM_AGC); | |
DEFINE_GUIDSTRUCT("B6F5A0A0-9E61-4f8c-91E3-76CF0F3C471F",KSALGORITHMINSTANCE_SYSTEM_MICROPHONE_ARRAY_PROCESSOR); | |
DEFINE_GUIDSTRUCT("941C7AC0-C559-11D0-8A2B-00A0C9255AC1",KSNODETYPE_DEV_SPECIFIC); | |
DEFINE_GUIDSTRUCT("8074C5B2-3C66-11D2-B45A-3078302C2030",KSNODETYPE_PROLOGIC_ENCODER); | |
DEFINE_GUIDSTRUCT("A085651E-5F0D-4b36-A869-D195D6AB4B9E",KSNODETYPE_PEAKMETER); | |
DEFINE_GUIDSTRUCT("185FEDE0-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_BASS); | |
DEFINE_GUIDSTRUCT("185FEDE1-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_TREBLE); | |
DEFINE_GUIDSTRUCT("185FEDE2-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_3D_STEREO); | |
DEFINE_GUIDSTRUCT("185FEDE3-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MASTER_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDE4-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MASTER_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDE5-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_WAVE_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDE6-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_WAVE_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDE7-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIDI_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDE8-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIDI_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDE9-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_CD_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDEA-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_CD_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDEB-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_LINE_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDEC-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_LINE_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDED-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIC_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDEE-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIC_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDEF-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_RECORDING_SOURCE); | |
DEFINE_GUIDSTRUCT("185FEDF0-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_PC_SPEAKER_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDF1-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_PC_SPEAKER_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDF2-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIDI_IN_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDF3-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_CD_IN_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDF4-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_LINE_IN_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDF5-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIC_IN_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDF6-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_WAVE_IN_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDF7-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_VOLUME_CONTROL); | |
DEFINE_GUIDSTRUCT("185FEDF8-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_MIDI); | |
DEFINE_GUIDSTRUCT("185FEDF9-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_LINE_IN); | |
DEFINE_GUIDSTRUCT("185FEDFA-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_RECORDING_CONTROL); | |
DEFINE_GUIDSTRUCT("185FEDFB-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_CD_AUDIO); | |
DEFINE_GUIDSTRUCT("185FEDFC-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_AUX_VOLUME); | |
DEFINE_GUIDSTRUCT("185FEDFD-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_AUX_MUTE); | |
DEFINE_GUIDSTRUCT("185FEDFE-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_AUX); | |
DEFINE_GUIDSTRUCT("185FEDFF-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_PC_SPEAKER); | |
DEFINE_GUIDSTRUCT("185FEE00-9905-11D1-95A9-00C04FB925D3",KSAUDFNAME_WAVE_OUT_MIX); | |
DEFINE_GUIDSTRUCT("F9B41DC3-96E2-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MONO_OUT); | |
DEFINE_GUIDSTRUCT("00DFF077-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_STEREO_MIX); | |
DEFINE_GUIDSTRUCT("00DFF078-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MONO_MIX); | |
DEFINE_GUIDSTRUCT("1AD247EB-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MONO_OUT_VOLUME); | |
DEFINE_GUIDSTRUCT("1AD247EC-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MONO_OUT_MUTE); | |
DEFINE_GUIDSTRUCT("1AD247ED-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_STEREO_MIX_VOLUME); | |
DEFINE_GUIDSTRUCT("22B0EAFD-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_STEREO_MIX_MUTE); | |
DEFINE_GUIDSTRUCT("22B0EAFE-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MONO_MIX_VOLUME); | |
DEFINE_GUIDSTRUCT("2BC31D69-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MONO_MIX_MUTE); | |
DEFINE_GUIDSTRUCT("2BC31D6A-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_MICROPHONE_BOOST); | |
DEFINE_GUIDSTRUCT("2BC31D6B-96E3-11d2-AC4C-00C04F8EFB68",KSAUDFNAME_ALTERNATE_MICROPHONE); | |
DEFINE_GUIDSTRUCT("63FF5747-991F-11d2-AC4D-00C04F8EFB68",KSAUDFNAME_3D_DEPTH); | |
DEFINE_GUIDSTRUCT("9F0670B4-991F-11d2-AC4D-00C04F8EFB68",KSAUDFNAME_3D_CENTER); | |
DEFINE_GUIDSTRUCT("9B46E708-992A-11d2-AC4D-00C04F8EFB68",KSAUDFNAME_VIDEO_VOLUME); | |
DEFINE_GUIDSTRUCT("9B46E709-992A-11d2-AC4D-00C04F8EFB68",KSAUDFNAME_VIDEO_MUTE); | |
DEFINE_GUIDSTRUCT("915DAEC4-A434-11d2-AC52-00C04F8EFB68",KSAUDFNAME_VIDEO); | |
DEFINE_GUIDSTRUCT("57E24340-FC5B-4612-A562-72B11A29DFAE",KSAUDFNAME_PEAKMETER); | |
DEFINE_GUIDSTRUCT("DCEF31EB-D907-11D0-9583-00C04FB925D3",KSMETHODSETID_Wavetable); | |
typedef enum { | |
KSMETHOD_WAVETABLE_WAVE_ALLOC, | |
KSMETHOD_WAVETABLE_WAVE_FREE, | |
KSMETHOD_WAVETABLE_WAVE_FIND, | |
KSMETHOD_WAVETABLE_WAVE_WRITE | |
} KSMETHOD_WAVETABLE; | |
typedef struct { | |
KSIDENTIFIER Identifier; | |
ULONG Size; | |
WINBOOL Looped; | |
ULONG LoopPoint; | |
WINBOOL InROM; | |
KSDATAFORMAT Format; | |
} KSWAVETABLE_WAVE_DESC,*PKSWAVETABLE_WAVE_DESC; | |
DEFINE_GUIDSTRUCT("D7A4AF8B-3DC1-4902-91EA-8A15C90E05B2",KSPROPSETID_Acoustic_Echo_Cancel); | |
typedef enum { | |
KSPROPERTY_AEC_NOISE_FILL_ENABLE = 0, | |
KSPROPERTY_AEC_STATUS, | |
KSPROPERTY_AEC_MODE | |
} KSPROPERTY_AEC; | |
DEFINE_GUIDSTRUCT("924e54b0-630f-11cf-ada7-08003e30494a",KSPROPSETID_Wave); | |
typedef enum { | |
KSPROPERTY_WAVE_COMPATIBLE_CAPABILITIES, | |
KSPROPERTY_WAVE_INPUT_CAPABILITIES, | |
KSPROPERTY_WAVE_OUTPUT_CAPABILITIES, | |
KSPROPERTY_WAVE_BUFFER, | |
KSPROPERTY_WAVE_FREQUENCY, | |
KSPROPERTY_WAVE_VOLUME, | |
KSPROPERTY_WAVE_PAN | |
} KSPROPERTY_WAVE; | |
typedef struct { | |
ULONG ulDeviceType; | |
} KSWAVE_COMPATCAPS,*PKSWAVE_COMPATCAPS; | |
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 LeftAttenuation; | |
LONG RightAttenuation; | |
} KSWAVE_VOLUME,*PKSWAVE_VOLUME; | |
typedef struct { | |
ULONG Attributes; | |
ULONG BufferSize; | |
PVOID BufferAddress; | |
} KSWAVE_BUFFER,*PKSWAVE_BUFFER; | |
DEFINE_GUIDSTRUCT("86C92E60-62E8-11CF-A5D6-28DB04C10000",KSMUSIC_TECHNOLOGY_PORT); | |
DEFINE_GUIDSTRUCT("0ECF4380-62E9-11CF-A5D6-28DB04C10000",KSMUSIC_TECHNOLOGY_SQSYNTH); | |
DEFINE_GUIDSTRUCT("252C5C80-62E9-11CF-A5D6-28DB04C10000",KSMUSIC_TECHNOLOGY_FMSYNTH); | |
DEFINE_GUIDSTRUCT("394EC7C0-62E9-11CF-A5D6-28DB04C10000",KSMUSIC_TECHNOLOGY_WAVETABLE); | |
DEFINE_GUIDSTRUCT("37407736-3620-11D1-85D3-0000F8754380",KSMUSIC_TECHNOLOGY_SWSYNTH); | |
DEFINE_GUIDSTRUCT("8539E660-62E9-11CF-A5D6-28DB04C10000",KSPROPSETID_WaveTable); | |
typedef enum { | |
KSPROPERTY_WAVETABLE_LOAD_SAMPLE, | |
KSPROPERTY_WAVETABLE_UNLOAD_SAMPLE, | |
KSPROPERTY_WAVETABLE_MEMORY, | |
KSPROPERTY_WAVETABLE_VERSION | |
} KSPROPERTY_WAVETABLE; | |
typedef struct { | |
KSDATARANGE DataRange; | |
GUID Technology; | |
ULONG Channels; | |
ULONG Notes; | |
ULONG ChannelMask; | |
} KSDATARANGE_MUSIC,*PKSDATARANGE_MUSIC; | |
DEFINE_GUIDSTRUCT("142C1AC0-072A-11D0-A5D6-28DB04C10000",KSEVENTSETID_Cyclic); | |
typedef enum { | |
KSEVENT_CYCLIC_TIME_INTERVAL | |
} KSEVENT_CYCLIC_TIME; | |
DEFINE_GUIDSTRUCT("3FFEAEA0-2BEE-11CF-A5D6-28DB04C10000",KSPROPSETID_Cyclic); | |
typedef enum { | |
KSPROPERTY_CYCLIC_POSITION | |
} KSPROPERTY_CYCLIC; | |
DEFINE_GUIDSTRUCT("E85E9698-FA2F-11D1-95BD-00C04FB925D3",KSEVENTSETID_AudioControlChange); | |
typedef enum { | |
KSEVENT_CONTROL_CHANGE | |
} KSEVENT_AUDIO_CONTROL_CHANGE; | |
DEFINE_GUIDSTRUCT("4682B940-C6EF-11D0-96D8-00AA0051E51D",KSEVENTSETID_LoopedStreaming); | |
typedef enum { | |
KSEVENT_LOOPEDSTREAMING_POSITION | |
} KSEVENT_LOOPEDSTREAMING; | |
typedef struct { | |
KSEVENTDATA KsEventData; | |
DWORDLONG Position; | |
} LOOPEDSTREAMING_POSITION_EVENT_DATA,*PLOOPEDSTREAMING_POSITION_EVENT_DATA; | |
DEFINE_GUIDSTRUCT("CBE3FAA0-CC75-11D0-B465-00001A1818E6",KSPROPSETID_Sysaudio); | |
typedef enum { | |
KSPROPERTY_SYSAUDIO_DEVICE_COUNT = 1, | |
KSPROPERTY_SYSAUDIO_DEVICE_FRIENDLY_NAME = 2, | |
KSPROPERTY_SYSAUDIO_DEVICE_INSTANCE = 3, | |
KSPROPERTY_SYSAUDIO_DEVICE_INTERFACE_NAME = 4, | |
KSPROPERTY_SYSAUDIO_SELECT_GRAPH = 5, | |
KSPROPERTY_SYSAUDIO_CREATE_VIRTUAL_SOURCE = 6, | |
KSPROPERTY_SYSAUDIO_DEVICE_DEFAULT = 7, | |
KSPROPERTY_SYSAUDIO_INSTANCE_INFO = 14, | |
KSPROPERTY_SYSAUDIO_COMPONENT_ID = 16 | |
} KSPROPERTY_SYSAUDIO; | |
typedef struct { | |
KSPROPERTY Property; | |
GUID PinCategory; | |
GUID PinName; | |
} SYSAUDIO_CREATE_VIRTUAL_SOURCE,*PSYSAUDIO_CREATE_VIRTUAL_SOURCE; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG PinId; | |
ULONG NodeId; | |
ULONG Flags; | |
ULONG Reserved; | |
} SYSAUDIO_SELECT_GRAPH,*PSYSAUDIO_SELECT_GRAPH; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Flags; | |
ULONG DeviceNumber; | |
} SYSAUDIO_INSTANCE_INFO,*PSYSAUDIO_INSTANCE_INFO; | |
DEFINE_GUIDSTRUCT("A3A53220-C6E4-11D0-B465-00001A1818E6",KSPROPSETID_Sysaudio_Pin); | |
typedef enum { | |
KSPROPERTY_SYSAUDIO_ATTACH_VIRTUAL_SOURCE = 1 | |
} KSPROPERTY_SYSAUDIO_PIN; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG MixerPinId; | |
ULONG Reserved; | |
} SYSAUDIO_ATTACH_VIRTUAL_SOURCE,*PSYSAUDIO_ATTACH_VIRTUAL_SOURCE; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG NodeId; | |
ULONG Reserved; | |
} KSNODEPROPERTY,*PKSNODEPROPERTY; | |
typedef struct { | |
KSNODEPROPERTY NodeProperty; | |
LONG Channel; | |
ULONG Reserved; | |
} KSNODEPROPERTY_AUDIO_CHANNEL,*PKSNODEPROPERTY_AUDIO_CHANNEL; | |
typedef struct { | |
KSNODEPROPERTY NodeProperty; | |
ULONG DevSpecificId; | |
ULONG DeviceInfo; | |
ULONG Length; | |
} KSNODEPROPERTY_AUDIO_DEV_SPECIFIC,*PKSNODEPROPERTY_AUDIO_DEV_SPECIFIC; | |
typedef struct { | |
KSNODEPROPERTY NodeProperty; | |
PVOID ListenerId; | |
ULONG Reserved; | |
} KSNODEPROPERTY_AUDIO_3D_LISTENER,*PKSNODEPROPERTY_AUDIO_3D_LISTENER; | |
typedef struct { | |
KSNODEPROPERTY NodeProperty; | |
PVOID AppContext; | |
ULONG Length; | |
ULONG Reserved; | |
} KSNODEPROPERTY_AUDIO_PROPERTY,*PKSNODEPROPERTY_AUDIO_PROPERTY; | |
DEFINE_GUIDSTRUCT("79A9312E-59AE-43b0-A350-8B05284CAB24",KSPROPSETID_AudioGfx); | |
typedef enum { | |
KSPROPERTY_AUDIOGFX_RENDERTARGETDEVICEID, | |
KSPROPERTY_AUDIOGFX_CAPTURETARGETDEVICEID | |
} KSPROPERTY_AUDIOGFX; | |
DEFINE_GUIDSTRUCT("5A2FFE80-16B9-11D0-A5D6-28DB04C10000",KSPROPSETID_Linear); | |
typedef enum { | |
KSPROPERTY_LINEAR_POSITION | |
} KSPROPERTY_LINEAR; | |
DEFINE_GUIDSTRUCT("E725D360-62CC-11CF-A5D6-28DB04C10000",KSDATAFORMAT_TYPE_MUSIC); | |
DEFINE_GUIDSTRUCT("7364696D-0000-0010-8000-00aa00389b71",KSDATAFORMAT_TYPE_MIDI); | |
DEFINE_GUIDSTRUCT("1D262760-E957-11CF-A5D6-28DB04C10000",KSDATAFORMAT_SUBTYPE_MIDI); | |
DEFINE_GUIDSTRUCT("2CA15FA0-6CFE-11CF-A5D6-28DB04C10000",KSDATAFORMAT_SUBTYPE_MIDI_BUS); | |
DEFINE_GUIDSTRUCT("4995DAF0-9EE6-11D0-A40E-00A0C9223196",KSDATAFORMAT_SUBTYPE_RIFFMIDI); | |
typedef struct { | |
ULONG TimeDeltaMs; | |
ULONG ByteCount; | |
} KSMUSICFORMAT,*PKSMUSICFORMAT; | |
DEFINE_GUIDSTRUCT("36523B11-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_TYPE_STANDARD_ELEMENTARY_STREAM); | |
DEFINE_GUIDSTRUCT("36523B12-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_TYPE_STANDARD_PES_PACKET); | |
DEFINE_GUIDSTRUCT("36523B13-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_TYPE_STANDARD_PACK_HEADER); | |
DEFINE_GUIDSTRUCT("36523B21-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_VIDEO); | |
DEFINE_GUIDSTRUCT("36523B22-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SUBTYPE_STANDARD_MPEG1_AUDIO); | |
DEFINE_GUIDSTRUCT("36523B23-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_VIDEO); | |
DEFINE_GUIDSTRUCT("36523B24-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SUBTYPE_STANDARD_MPEG2_AUDIO); | |
DEFINE_GUIDSTRUCT("36523B25-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SUBTYPE_STANDARD_AC3_AUDIO); | |
DEFINE_GUIDSTRUCT("36523B31-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_VIDEO); | |
DEFINE_GUIDSTRUCT("36523B32-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SPECIFIER_DIALECT_MPEG1_AUDIO); | |
DEFINE_GUIDSTRUCT("36523B33-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_VIDEO); | |
DEFINE_GUIDSTRUCT("36523B34-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SPECIFIER_DIALECT_MPEG2_AUDIO); | |
DEFINE_GUIDSTRUCT("36523B35-8EE5-11d1-8CA3-0060B057664A",KSDATAFORMAT_SPECIFIER_DIALECT_AC3_AUDIO); | |
DEFINE_GUIDSTRUCT("a0af4f81-e163-11d0-bad9-00609744111a",KSDATAFORMAT_SUBTYPE_DSS_VIDEO); | |
DEFINE_GUIDSTRUCT("a0af4f82-e163-11d0-bad9-00609744111a",KSDATAFORMAT_SUBTYPE_DSS_AUDIO); | |
DEFINE_GUIDSTRUCT("e436eb80-524f-11ce-9F53-0020af0ba770",KSDATAFORMAT_SUBTYPE_MPEG1Packet); | |
DEFINE_GUIDSTRUCT("e436eb81-524f-11ce-9F53-0020af0ba770",KSDATAFORMAT_SUBTYPE_MPEG1Payload); | |
DEFINE_GUIDSTRUCT("e436eb86-524f-11ce-9f53-0020af0ba770",KSDATAFORMAT_SUBTYPE_MPEG1Video); | |
DEFINE_GUIDSTRUCT("05589f82-c356-11ce-bf01-00aa0055595a",KSDATAFORMAT_SPECIFIER_MPEG1_VIDEO); | |
DEFINE_GUIDSTRUCT("e06d8020-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_TYPE_MPEG2_PES); | |
DEFINE_GUIDSTRUCT("e06d8022-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_TYPE_MPEG2_PROGRAM); | |
DEFINE_GUIDSTRUCT("e06d8023-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_TYPE_MPEG2_TRANSPORT); | |
DEFINE_GUIDSTRUCT("e06d8026-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_MPEG2_VIDEO); | |
DEFINE_GUIDSTRUCT("e06d80e3-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SPECIFIER_MPEG2_VIDEO); | |
DEFINE_GUIDSTRUCT("C8E11B60-0CC9-11D0-BD69-003505C103A9",KSPROPSETID_Mpeg2Vid); | |
typedef enum { | |
KSPROPERTY_MPEG2VID_MODES, | |
KSPROPERTY_MPEG2VID_CUR_MODE, | |
KSPROPERTY_MPEG2VID_4_3_RECT, | |
KSPROPERTY_MPEG2VID_16_9_RECT, | |
KSPROPERTY_MPEG2VID_16_9_PANSCAN | |
} KSPROPERTY_MPEG2VID; | |
typedef struct _KSMPEGVID_RECT { | |
ULONG StartX; | |
ULONG StartY; | |
ULONG EndX; | |
ULONG EndY; | |
} KSMPEGVID_RECT,*PKSMPEGVID_RECT; | |
DEFINE_GUIDSTRUCT("e06d802b-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_MPEG2_AUDIO); | |
DEFINE_GUIDSTRUCT("e06d80e5-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SPECIFIER_MPEG2_AUDIO); | |
DEFINE_GUIDSTRUCT("e06d8032-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_LPCM_AUDIO); | |
DEFINE_GUIDSTRUCT("e06d80e6-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SPECIFIER_LPCM_AUDIO); | |
DEFINE_GUIDSTRUCT("e06d802c-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_AC3_AUDIO); | |
DEFINE_GUIDSTRUCT("e06d80e4-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SPECIFIER_AC3_AUDIO); | |
DEFINE_GUIDSTRUCT("BFABE720-6E1F-11D0-BCF2-444553540000",KSPROPSETID_AC3); | |
typedef enum { | |
KSPROPERTY_AC3_ERROR_CONCEALMENT = 1, | |
KSPROPERTY_AC3_ALTERNATE_AUDIO, | |
KSPROPERTY_AC3_DOWNMIX, | |
KSPROPERTY_AC3_BIT_STREAM_MODE, | |
KSPROPERTY_AC3_DIALOGUE_LEVEL, | |
KSPROPERTY_AC3_LANGUAGE_CODE, | |
KSPROPERTY_AC3_ROOM_TYPE | |
} KSPROPERTY_AC3; | |
typedef struct { | |
WINBOOL fRepeatPreviousBlock; | |
WINBOOL fErrorInCurrentBlock; | |
} KSAC3_ERROR_CONCEALMENT,*PKSAC3_ERROR_CONCEALMENT; | |
typedef struct { | |
WINBOOL fStereo; | |
ULONG DualMode; | |
} KSAC3_ALTERNATE_AUDIO,*PKSAC3_ALTERNATE_AUDIO; | |
typedef struct { | |
WINBOOL fDownMix; | |
WINBOOL fDolbySurround; | |
} KSAC3_DOWNMIX,*PKSAC3_DOWNMIX; | |
typedef struct { | |
LONG BitStreamMode; | |
} KSAC3_BIT_STREAM_MODE,*PKSAC3_BIT_STREAM_MODE; | |
typedef struct { | |
ULONG DialogueLevel; | |
} KSAC3_DIALOGUE_LEVEL,*PKSAC3_DIALOGUE_LEVEL; | |
typedef struct { | |
WINBOOL fLargeRoom; | |
} KSAC3_ROOM_TYPE,*PKSAC3_ROOM_TYPE; | |
DEFINE_GUIDSTRUCT("e06d8033-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_DTS_AUDIO); | |
DEFINE_GUIDSTRUCT("e06d8034-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_SDDS_AUDIO); | |
DEFINE_GUIDSTRUCT("6ca6e020-43bd-11d0-bd6a-003505c103a9",KSPROPSETID_AudioDecoderOut); | |
typedef enum { | |
KSPROPERTY_AUDDECOUT_MODES, | |
KSPROPERTY_AUDDECOUT_CUR_MODE | |
} KSPROPERTY_AUDDECOUT; | |
DEFINE_GUIDSTRUCT("e06d802d-db46-11cf-b4d1-00805f6cbbea",KSDATAFORMAT_SUBTYPE_SUBPICTURE); | |
DEFINE_GUIDSTRUCT("ac390460-43af-11d0-bd6a-003505c103a9",KSPROPSETID_DvdSubPic); | |
typedef enum { | |
KSPROPERTY_DVDSUBPIC_PALETTE, | |
KSPROPERTY_DVDSUBPIC_HLI, | |
KSPROPERTY_DVDSUBPIC_COMPOSIT_ON | |
} KSPROPERTY_DVDSUBPIC; | |
typedef struct _KS_DVD_YCrCb { | |
UCHAR Reserved; | |
UCHAR Y; | |
UCHAR Cr; | |
UCHAR Cb; | |
} KS_DVD_YCrCb,*PKS_DVD_YCrCb; | |
typedef struct _KS_DVD_YUV { | |
UCHAR Reserved; | |
UCHAR Y; | |
UCHAR V; | |
UCHAR U; | |
} KS_DVD_YUV,*PKS_DVD_YUV; | |
typedef struct _KSPROPERTY_SPPAL { | |
KS_DVD_YUV sppal[16]; | |
} KSPROPERTY_SPPAL,*PKSPROPERTY_SPPAL; | |
typedef struct _KS_COLCON { | |
UCHAR emph1col:4; | |
UCHAR emph2col:4; | |
UCHAR backcol:4; | |
UCHAR patcol:4; | |
UCHAR emph1con:4; | |
UCHAR emph2con:4; | |
UCHAR backcon:4; | |
UCHAR patcon:4; | |
} KS_COLCON,*PKS_COLCON; | |
typedef struct _KSPROPERTY_SPHLI { | |
USHORT HLISS; | |
USHORT Reserved; | |
ULONG StartPTM; | |
ULONG EndPTM; | |
USHORT StartX; | |
USHORT StartY; | |
USHORT StopX; | |
USHORT StopY; | |
KS_COLCON ColCon; | |
} KSPROPERTY_SPHLI,*PKSPROPERTY_SPHLI; | |
typedef WINBOOL KSPROPERTY_COMPOSIT_ON,*PKSPROPERTY_COMPOSIT_ON; | |
DEFINE_GUIDSTRUCT("0E8A0A40-6AEF-11D0-9ED0-00A024CA19B3",KSPROPSETID_CopyProt); | |
typedef enum { | |
KSPROPERTY_DVDCOPY_CHLG_KEY = 0x01, | |
KSPROPERTY_DVDCOPY_DVD_KEY1, | |
KSPROPERTY_DVDCOPY_DEC_KEY2, | |
KSPROPERTY_DVDCOPY_TITLE_KEY, | |
KSPROPERTY_COPY_MACROVISION, | |
KSPROPERTY_DVDCOPY_REGION, | |
KSPROPERTY_DVDCOPY_SET_COPY_STATE, | |
KSPROPERTY_DVDCOPY_DISC_KEY = 0x80 | |
} KSPROPERTY_COPYPROT; | |
typedef struct _KS_DVDCOPY_CHLGKEY { | |
BYTE ChlgKey[10]; | |
BYTE Reserved[2]; | |
} KS_DVDCOPY_CHLGKEY,*PKS_DVDCOPY_CHLGKEY; | |
typedef struct _KS_DVDCOPY_BUSKEY { | |
BYTE BusKey[5]; | |
BYTE Reserved[1]; | |
} KS_DVDCOPY_BUSKEY,*PKS_DVDCOPY_BUSKEY; | |
typedef struct _KS_DVDCOPY_DISCKEY { | |
BYTE DiscKey[2048]; | |
} KS_DVDCOPY_DISCKEY,*PKS_DVDCOPY_DISCKEY; | |
typedef struct _KS_DVDCOPY_REGION { | |
UCHAR Reserved; | |
UCHAR RegionData; | |
UCHAR Reserved2[2]; | |
} KS_DVDCOPY_REGION,*PKS_DVDCOPY_REGION; | |
typedef struct _KS_DVDCOPY_TITLEKEY { | |
ULONG KeyFlags; | |
ULONG ReservedNT[2]; | |
UCHAR TitleKey[6]; | |
UCHAR Reserved[2]; | |
} KS_DVDCOPY_TITLEKEY,*PKS_DVDCOPY_TITLEKEY; | |
typedef struct _KS_COPY_MACROVISION { | |
ULONG MACROVISIONLevel; | |
} KS_COPY_MACROVISION,*PKS_COPY_MACROVISION; | |
typedef struct _KS_DVDCOPY_SET_COPY_STATE { | |
ULONG DVDCopyState; | |
} KS_DVDCOPY_SET_COPY_STATE,*PKS_DVDCOPY_SET_COPY_STATE; | |
typedef enum { | |
KS_DVDCOPYSTATE_INITIALIZE, | |
KS_DVDCOPYSTATE_INITIALIZE_TITLE, | |
KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED, | |
KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED, | |
KS_DVDCOPYSTATE_DONE | |
} KS_DVDCOPYSTATE; | |
typedef enum { | |
KS_MACROVISION_DISABLED, | |
KS_MACROVISION_LEVEL1, | |
KS_MACROVISION_LEVEL2, | |
KS_MACROVISION_LEVEL3 | |
} KS_COPY_MACROVISION_LEVEL,*PKS_COPY_MACROVISION_LEVEL; | |
DEFINE_GUIDSTRUCT("a799a800-a46d-11d0-a18c-00a02401dcd4",KSCATEGORY_TVTUNER); | |
DEFINE_GUIDSTRUCT("a799a801-a46d-11d0-a18c-00a02401dcd4",KSCATEGORY_CROSSBAR); | |
DEFINE_GUIDSTRUCT("a799a802-a46d-11d0-a18c-00a02401dcd4",KSCATEGORY_TVAUDIO); | |
DEFINE_GUIDSTRUCT("a799a803-a46d-11d0-a18c-00a02401dcd4",KSCATEGORY_VPMUX); | |
DEFINE_GUIDSTRUCT("07dad660-22f1-11d1-a9f4-00c04fbbde8f",KSCATEGORY_VBICODEC); | |
DEFINE_GUIDSTRUCT("5a9b6a40-1a22-11d1-bad9-00609744111a",KSDATAFORMAT_SUBTYPE_VPVideo); | |
DEFINE_GUIDSTRUCT("5a9b6a41-1a22-11d1-bad9-00609744111a",KSDATAFORMAT_SUBTYPE_VPVBI); | |
DEFINE_GUIDSTRUCT("05589f80-c356-11ce-bf01-00aa0055595a",KSDATAFORMAT_SPECIFIER_VIDEOINFO); | |
DEFINE_GUIDSTRUCT("f72a76A0-eb0a-11d0-ace4-0000c0cc16ba",KSDATAFORMAT_SPECIFIER_VIDEOINFO2); | |
DEFINE_GUIDSTRUCT("0482dde1-7817-11cf-8a03-00aa006ecb65",KSDATAFORMAT_TYPE_ANALOGVIDEO); | |
DEFINE_GUIDSTRUCT("0482dde0-7817-11cf-8a03-00aa006ecb65",KSDATAFORMAT_SPECIFIER_ANALOGVIDEO); | |
DEFINE_GUIDSTRUCT("0482DEE1-7817-11cf-8a03-00aa006ecb65",KSDATAFORMAT_TYPE_ANALOGAUDIO); | |
DEFINE_GUIDSTRUCT("f72a76e0-eb0a-11d0-ace4-0000c0cc16ba",KSDATAFORMAT_SPECIFIER_VBI); | |
DEFINE_GUIDSTRUCT("f72a76e1-eb0a-11d0-ace4-0000c0cc16ba",KSDATAFORMAT_TYPE_VBI); | |
DEFINE_GUIDSTRUCT("ca20d9a0-3e3e-11d1-9bf9-00c04fbbdebf",KSDATAFORMAT_SUBTYPE_RAW8); | |
DEFINE_GUIDSTRUCT("33214CC1-011F-11D2-B4B1-00A0D102CFBE",KSDATAFORMAT_SUBTYPE_CC); | |
DEFINE_GUIDSTRUCT("f72a76e2-eb0a-11d0-ace4-0000c0cc16ba",KSDATAFORMAT_SUBTYPE_NABTS); | |
DEFINE_GUIDSTRUCT("f72a76e3-eb0a-11d0-ace4-0000c0cc16ba",KSDATAFORMAT_SUBTYPE_TELETEXT); | |
typedef struct tagKS_RGBQUAD { | |
BYTE rgbBlue; | |
BYTE rgbGreen; | |
BYTE rgbRed; | |
BYTE rgbReserved; | |
} KS_RGBQUAD,*PKS_RGBQUAD; | |
typedef struct tagKS_BITMAPINFOHEADER { | |
DWORD biSize; | |
LONG biWidth; | |
LONG biHeight; | |
WORD biPlanes; | |
WORD biBitCount; | |
DWORD biCompression; | |
DWORD biSizeImage; | |
LONG biXPelsPerMeter; | |
LONG biYPelsPerMeter; | |
DWORD biClrUsed; | |
DWORD biClrImportant; | |
} KS_BITMAPINFOHEADER,*PKS_BITMAPINFOHEADER; | |
typedef struct tag_KS_TRUECOLORINFO { | |
DWORD dwBitMasks[KS_iMASK_COLORS]; | |
KS_RGBQUAD bmiColors[KS_iPALETTE_COLORS]; | |
} KS_TRUECOLORINFO,*PKS_TRUECOLORINFO; | |
typedef LONGLONG REFERENCE_TIME; | |
typedef struct tagKS_VIDEOINFOHEADER { | |
RECT rcSource; | |
RECT rcTarget; | |
DWORD dwBitRate; | |
DWORD dwBitErrorRate; | |
REFERENCE_TIME AvgTimePerFrame; | |
KS_BITMAPINFOHEADER bmiHeader; | |
} KS_VIDEOINFOHEADER,*PKS_VIDEOINFOHEADER; | |
typedef struct tagKS_VIDEOINFO { | |
RECT rcSource; | |
RECT rcTarget; | |
DWORD dwBitRate; | |
DWORD dwBitErrorRate; | |
REFERENCE_TIME AvgTimePerFrame; | |
KS_BITMAPINFOHEADER bmiHeader; | |
__MINGW_EXTENSION union { | |
KS_RGBQUAD bmiColors[KS_iPALETTE_COLORS]; | |
DWORD dwBitMasks[KS_iMASK_COLORS]; | |
KS_TRUECOLORINFO TrueColorInfo; | |
}; | |
} KS_VIDEOINFO,*PKS_VIDEOINFO; | |
typedef struct tagKS_VBIINFOHEADER { | |
ULONG StartLine; | |
ULONG EndLine; | |
ULONG SamplingFrequency; | |
ULONG MinLineStartTime; | |
ULONG MaxLineStartTime; | |
ULONG ActualLineStartTime; | |
ULONG ActualLineEndTime; | |
ULONG VideoStandard; | |
ULONG SamplesPerLine; | |
ULONG StrideInBytes; | |
ULONG BufferSize; | |
} KS_VBIINFOHEADER,*PKS_VBIINFOHEADER; | |
typedef struct tagKS_AnalogVideoInfo { | |
RECT rcSource; | |
RECT rcTarget; | |
DWORD dwActiveWidth; | |
DWORD dwActiveHeight; | |
REFERENCE_TIME AvgTimePerFrame; | |
} KS_ANALOGVIDEOINFO,*PKS_ANALOGVIDEOINFO; | |
typedef struct tagKS_TVTUNER_CHANGE_INFO { | |
DWORD dwFlags; | |
DWORD dwCountryCode; | |
DWORD dwAnalogVideoStandard; | |
DWORD dwChannel; | |
} KS_TVTUNER_CHANGE_INFO,*PKS_TVTUNER_CHANGE_INFO; | |
typedef enum { | |
KS_MPEG2Level_Low, | |
KS_MPEG2Level_Main, | |
KS_MPEG2Level_High1440, | |
KS_MPEG2Level_High | |
} KS_MPEG2Level; | |
typedef enum { | |
KS_MPEG2Profile_Simple, | |
KS_MPEG2Profile_Main, | |
KS_MPEG2Profile_SNRScalable, | |
KS_MPEG2Profile_SpatiallyScalable, | |
KS_MPEG2Profile_High | |
} KS_MPEG2Profile; | |
typedef struct tagKS_VIDEOINFOHEADER2 { | |
RECT rcSource; | |
RECT rcTarget; | |
DWORD dwBitRate; | |
DWORD dwBitErrorRate; | |
REFERENCE_TIME AvgTimePerFrame; | |
DWORD dwInterlaceFlags; | |
DWORD dwCopyProtectFlags; | |
DWORD dwPictAspectRatioX; | |
DWORD dwPictAspectRatioY; | |
DWORD dwReserved1; | |
DWORD dwReserved2; | |
KS_BITMAPINFOHEADER bmiHeader; | |
} KS_VIDEOINFOHEADER2,*PKS_VIDEOINFOHEADER2; | |
typedef struct tagKS_MPEG1VIDEOINFO { | |
KS_VIDEOINFOHEADER hdr; | |
DWORD dwStartTimeCode; | |
DWORD cbSequenceHeader; | |
BYTE bSequenceHeader[1]; | |
} KS_MPEG1VIDEOINFO,*PKS_MPEG1VIDEOINFO; | |
typedef struct tagKS_MPEGVIDEOINFO2 { | |
KS_VIDEOINFOHEADER2 hdr; | |
DWORD dwStartTimeCode; | |
DWORD cbSequenceHeader; | |
DWORD dwProfile; | |
DWORD dwLevel; | |
DWORD dwFlags; | |
DWORD bSequenceHeader[1]; | |
} KS_MPEGVIDEOINFO2,*PKS_MPEGVIDEOINFO2; | |
typedef struct tagKS_MPEAUDIOINFO { | |
DWORD dwFlags; | |
DWORD dwReserved1; | |
DWORD dwReserved2; | |
DWORD dwReserved3; | |
} KS_MPEGAUDIOINFO,*PKS_MPEGAUDIOINFO; | |
typedef struct tagKS_DATAFORMAT_VIDEOINFOHEADER { | |
KSDATAFORMAT DataFormat; | |
KS_VIDEOINFOHEADER VideoInfoHeader; | |
} KS_DATAFORMAT_VIDEOINFOHEADER,*PKS_DATAFORMAT_VIDEOINFOHEADER; | |
typedef struct tagKS_DATAFORMAT_VIDEOINFOHEADER2 { | |
KSDATAFORMAT DataFormat; | |
KS_VIDEOINFOHEADER2 VideoInfoHeader2; | |
} KS_DATAFORMAT_VIDEOINFOHEADER2,*PKS_DATAFORMAT_VIDEOINFOHEADER2; | |
typedef struct tagKS_DATAFORMAT_VIDEOINFO_PALETTE { | |
KSDATAFORMAT DataFormat; | |
KS_VIDEOINFO VideoInfo; | |
} KS_DATAFORMAT_VIDEOINFO_PALETTE,*PKS_DATAFORMAT_VIDEOINFO_PALETTE; | |
typedef struct tagKS_DATAFORMAT_VBIINFOHEADER { | |
KSDATAFORMAT DataFormat; | |
KS_VBIINFOHEADER VBIInfoHeader; | |
} KS_DATAFORMAT_VBIINFOHEADER,*PKS_DATAFORMAT_VBIINFOHEADER; | |
typedef struct _KS_VIDEO_STREAM_CONFIG_CAPS { | |
GUID guid; | |
ULONG VideoStandard; | |
SIZE InputSize; | |
SIZE MinCroppingSize; | |
SIZE MaxCroppingSize; | |
int CropGranularityX; | |
int CropGranularityY; | |
int CropAlignX; | |
int CropAlignY; | |
SIZE MinOutputSize; | |
SIZE MaxOutputSize; | |
int OutputGranularityX; | |
int OutputGranularityY; | |
int StretchTapsX; | |
int StretchTapsY; | |
int ShrinkTapsX; | |
int ShrinkTapsY; | |
LONGLONG MinFrameInterval; | |
LONGLONG MaxFrameInterval; | |
LONG MinBitsPerSecond; | |
LONG MaxBitsPerSecond; | |
} KS_VIDEO_STREAM_CONFIG_CAPS,*PKS_VIDEO_STREAM_CONFIG_CAPS; | |
typedef struct tagKS_DATARANGE_VIDEO { | |
KSDATARANGE DataRange; | |
WINBOOL bFixedSizeSamples; | |
WINBOOL bTemporalCompression; | |
DWORD StreamDescriptionFlags; | |
DWORD MemoryAllocationFlags; | |
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps; | |
KS_VIDEOINFOHEADER VideoInfoHeader; | |
} KS_DATARANGE_VIDEO,*PKS_DATARANGE_VIDEO; | |
typedef struct tagKS_DATARANGE_VIDEO2 { | |
KSDATARANGE DataRange; | |
WINBOOL bFixedSizeSamples; | |
WINBOOL bTemporalCompression; | |
DWORD StreamDescriptionFlags; | |
DWORD MemoryAllocationFlags; | |
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps; | |
KS_VIDEOINFOHEADER2 VideoInfoHeader; | |
} KS_DATARANGE_VIDEO2,*PKS_DATARANGE_VIDEO2; | |
typedef struct tagKS_DATARANGE_MPEG1_VIDEO { | |
KSDATARANGE DataRange; | |
WINBOOL bFixedSizeSamples; | |
WINBOOL bTemporalCompression; | |
DWORD StreamDescriptionFlags; | |
DWORD MemoryAllocationFlags; | |
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps; | |
KS_MPEG1VIDEOINFO VideoInfoHeader; | |
} KS_DATARANGE_MPEG1_VIDEO,*PKS_DATARANGE_MPEG1_VIDEO; | |
typedef struct tagKS_DATARANGE_MPEG2_VIDEO { | |
KSDATARANGE DataRange; | |
WINBOOL bFixedSizeSamples; | |
WINBOOL bTemporalCompression; | |
DWORD StreamDescriptionFlags; | |
DWORD MemoryAllocationFlags; | |
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps; | |
KS_MPEGVIDEOINFO2 VideoInfoHeader; | |
} KS_DATARANGE_MPEG2_VIDEO,*PKS_DATARANGE_MPEG2_VIDEO; | |
typedef struct tagKS_DATARANGE_VIDEO_PALETTE { | |
KSDATARANGE DataRange; | |
WINBOOL bFixedSizeSamples; | |
WINBOOL bTemporalCompression; | |
DWORD StreamDescriptionFlags; | |
DWORD MemoryAllocationFlags; | |
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps; | |
KS_VIDEOINFO VideoInfo; | |
} KS_DATARANGE_VIDEO_PALETTE,*PKS_DATARANGE_VIDEO_PALETTE; | |
typedef struct tagKS_DATARANGE_VIDEO_VBI { | |
KSDATARANGE DataRange; | |
WINBOOL bFixedSizeSamples; | |
WINBOOL bTemporalCompression; | |
DWORD StreamDescriptionFlags; | |
DWORD MemoryAllocationFlags; | |
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps; | |
KS_VBIINFOHEADER VBIInfoHeader; | |
} KS_DATARANGE_VIDEO_VBI,*PKS_DATARANGE_VIDEO_VBI; | |
typedef struct tagKS_DATARANGE_ANALOGVIDEO { | |
KSDATARANGE DataRange; | |
KS_ANALOGVIDEOINFO AnalogVideoInfo; | |
} KS_DATARANGE_ANALOGVIDEO,*PKS_DATARANGE_ANALOGVIDEO; | |
DEFINE_GUIDSTRUCT("F162C607-7B35-496f-AD7F-2DCA3B46B718",KSPROPSETID_VBICAP_PROPERTIES); | |
typedef enum { | |
KSPROPERTY_VBICAP_PROPERTIES_PROTECTION = 0x01 | |
} KSPROPERTY_VBICAP; | |
typedef struct _VBICAP_PROPERTIES_PROTECTION_S { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
ULONG Status; | |
} VBICAP_PROPERTIES_PROTECTION_S,*PVBICAP_PROPERTIES_PROTECTION_S; | |
DEFINE_GUIDSTRUCT("E757BCA0-39AC-11d1-A9F5-00C04FBBDE8F",KSDATAFORMAT_TYPE_NABTS); | |
DEFINE_GUIDSTRUCT("E757BCA1-39AC-11d1-A9F5-00C04FBBDE8F",KSDATAFORMAT_SUBTYPE_NABTS_FEC); | |
typedef struct _NABTSFEC_BUFFER { | |
ULONG dataSize; | |
USHORT groupID; | |
USHORT Reserved; | |
UCHAR data[NABTS_LINES_PER_BUNDLE *NABTS_PAYLOAD_PER_LINE]; | |
} NABTSFEC_BUFFER,*PNABTSFEC_BUFFER; | |
DEFINE_GUIDSTRUCT("cafeb0ca-8715-11d0-bd6a-0035c0edbabe",KSPROPSETID_VBICodecFiltering); | |
typedef enum { | |
KSPROPERTY_VBICODECFILTERING_SCANLINES_REQUESTED_BIT_ARRAY = 0x01, | |
KSPROPERTY_VBICODECFILTERING_SCANLINES_DISCOVERED_BIT_ARRAY, | |
KSPROPERTY_VBICODECFILTERING_SUBSTREAMS_REQUESTED_BIT_ARRAY, | |
KSPROPERTY_VBICODECFILTERING_SUBSTREAMS_DISCOVERED_BIT_ARRAY, | |
KSPROPERTY_VBICODECFILTERING_STATISTICS | |
} KSPROPERTY_VBICODECFILTERING; | |
typedef struct _VBICODECFILTERING_SCANLINES { | |
DWORD DwordBitArray[32]; | |
} VBICODECFILTERING_SCANLINES,*PVBICODECFILTERING_SCANLINES; | |
typedef struct _VBICODECFILTERING_NABTS_SUBSTREAMS { | |
DWORD SubstreamMask[128]; | |
} VBICODECFILTERING_NABTS_SUBSTREAMS,*PVBICODECFILTERING_NABTS_SUBSTREAMS; | |
typedef struct _VBICODECFILTERING_CC_SUBSTREAMS { | |
DWORD SubstreamMask; | |
} VBICODECFILTERING_CC_SUBSTREAMS,*PVBICODECFILTERING_CC_SUBSTREAMS; | |
typedef struct _CC_BYTE_PAIR { | |
BYTE Decoded[2]; | |
USHORT Reserved; | |
} CC_BYTE_PAIR,*PCC_BYTE_PAIR; | |
typedef struct _CC_HW_FIELD { | |
VBICODECFILTERING_SCANLINES ScanlinesRequested; | |
ULONG fieldFlags; | |
LONGLONG PictureNumber; | |
CC_BYTE_PAIR Lines[CC_MAX_HW_DECODE_LINES]; | |
} CC_HW_FIELD,*PCC_HW_FIELD; | |
typedef struct _NABTS_BUFFER_LINE { | |
BYTE Confidence; | |
BYTE Bytes[NABTS_BYTES_PER_LINE]; | |
} NABTS_BUFFER_LINE,*PNABTS_BUFFER_LINE; | |
typedef struct _NABTS_BUFFER { | |
VBICODECFILTERING_SCANLINES ScanlinesRequested; | |
LONGLONG PictureNumber; | |
NABTS_BUFFER_LINE NabtsLines[MAX_NABTS_VBI_LINES_PER_FIELD]; | |
} NABTS_BUFFER,*PNABTS_BUFFER; | |
typedef struct _WST_BUFFER_LINE { | |
BYTE Confidence; | |
BYTE Bytes[WST_BYTES_PER_LINE]; | |
} WST_BUFFER_LINE,*PWST_BUFFER_LINE; | |
typedef struct _WST_BUFFER { | |
VBICODECFILTERING_SCANLINES ScanlinesRequested; | |
WST_BUFFER_LINE WstLines[MAX_WST_VBI_LINES_PER_FIELD]; | |
} WST_BUFFER,*PWST_BUFFER; | |
typedef struct _VBICODECFILTERING_STATISTICS_COMMON { | |
DWORD InputSRBsProcessed; | |
DWORD OutputSRBsProcessed; | |
DWORD SRBsIgnored; | |
DWORD InputSRBsMissing; | |
DWORD OutputSRBsMissing; | |
DWORD OutputFailures; | |
DWORD InternalErrors; | |
DWORD ExternalErrors; | |
DWORD InputDiscontinuities; | |
DWORD DSPFailures; | |
DWORD TvTunerChanges; | |
DWORD VBIHeaderChanges; | |
DWORD LineConfidenceAvg; | |
DWORD BytesOutput; | |
} VBICODECFILTERING_STATISTICS_COMMON,*PVBICODECFILTERING_STATISTICS_COMMON; | |
typedef struct _VBICODECFILTERING_STATISTICS_COMMON_PIN { | |
DWORD SRBsProcessed; | |
DWORD SRBsIgnored; | |
DWORD SRBsMissing; | |
DWORD InternalErrors; | |
DWORD ExternalErrors; | |
DWORD Discontinuities; | |
DWORD LineConfidenceAvg; | |
DWORD BytesOutput; | |
} VBICODECFILTERING_STATISTICS_COMMON_PIN,*PVBICODECFILTERING_STATISTICS_COMMON_PIN; | |
typedef struct _VBICODECFILTERING_STATISTICS_NABTS { | |
VBICODECFILTERING_STATISTICS_COMMON Common; | |
DWORD FECBundleBadLines; | |
DWORD FECQueueOverflows; | |
DWORD FECCorrectedLines; | |
DWORD FECUncorrectableLines; | |
DWORD BundlesProcessed; | |
DWORD BundlesSent2IP; | |
DWORD FilteredLines; | |
} VBICODECFILTERING_STATISTICS_NABTS,*PVBICODECFILTERING_STATISTICS_NABTS; | |
typedef struct _VBICODECFILTERING_STATISTICS_NABTS_PIN { | |
VBICODECFILTERING_STATISTICS_COMMON_PIN Common; | |
} VBICODECFILTERING_STATISTICS_NABTS_PIN,*PVBICODECFILTERING_STATISTICS_NABTS_PIN; | |
typedef struct _VBICODECFILTERING_STATISTICS_CC { | |
VBICODECFILTERING_STATISTICS_COMMON Common; | |
} VBICODECFILTERING_STATISTICS_CC,*PVBICODECFILTERING_STATISTICS_CC; | |
typedef struct _VBICODECFILTERING_STATISTICS_CC_PIN { | |
VBICODECFILTERING_STATISTICS_COMMON_PIN Common; | |
} VBICODECFILTERING_STATISTICS_CC_PIN,*PVBICODECFILTERING_STATISTICS_CC_PIN; | |
typedef struct _VBICODECFILTERING_STATISTICS_TELETEXT { | |
VBICODECFILTERING_STATISTICS_COMMON Common; | |
} VBICODECFILTERING_STATISTICS_TELETEXT,*PVBICODECFILTERING_STATISTICS_TELETEXT; | |
typedef struct _VBICODECFILTERING_STATISTICS_TELETEXT_PIN { | |
VBICODECFILTERING_STATISTICS_COMMON_PIN Common; | |
} VBICODECFILTERING_STATISTICS_TELETEXT_PIN,*PVBICODECFILTERING_STATISTICS_TELETEXT_PIN; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_SCANLINES Scanlines; | |
} KSPROPERTY_VBICODECFILTERING_SCANLINES_S,*PKSPROPERTY_VBICODECFILTERING_SCANLINES_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_NABTS_SUBSTREAMS Substreams; | |
} KSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S,*PKSPROPERTY_VBICODECFILTERING_NABTS_SUBSTREAMS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_CC_SUBSTREAMS Substreams; | |
} KSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S,*PKSPROPERTY_VBICODECFILTERING_CC_SUBSTREAMS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_STATISTICS_COMMON Statistics; | |
} KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S,*PKSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_STATISTICS_COMMON_PIN Statistics; | |
} KSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S,*PKSPROPERTY_VBICODECFILTERING_STATISTICS_COMMON_PIN_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_STATISTICS_NABTS Statistics; | |
} KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S,*PKSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_STATISTICS_NABTS_PIN Statistics; | |
} KSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S,*PKSPROPERTY_VBICODECFILTERING_STATISTICS_NABTS_PIN_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_STATISTICS_CC Statistics; | |
} KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S,*PKSPROPERTY_VBICODECFILTERING_STATISTICS_CC_S; | |
typedef struct { | |
KSPROPERTY Property; | |
VBICODECFILTERING_STATISTICS_CC_PIN Statistics; | |
} KSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S,*PKSPROPERTY_VBICODECFILTERING_STATISTICS_CC_PIN_S; | |
DEFINE_GUIDSTRUCT("FB6C4281-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_CAPTURE); | |
DEFINE_GUIDSTRUCT("1AAD8061-012D-11d2-B4B1-00A0D102CFBE",PINNAME_VIDEO_CC_CAPTURE); | |
DEFINE_GUIDSTRUCT("29703660-498A-11d2-B4B1-00A0D102CFBE",PINNAME_VIDEO_NABTS_CAPTURE); | |
DEFINE_GUIDSTRUCT("FB6C4282-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_PREVIEW); | |
DEFINE_GUIDSTRUCT("FB6C4283-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_ANALOGVIDEOIN); | |
DEFINE_GUIDSTRUCT("FB6C4284-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_VBI); | |
DEFINE_GUIDSTRUCT("FB6C4285-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_VIDEOPORT); | |
DEFINE_GUIDSTRUCT("FB6C4286-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_NABTS); | |
DEFINE_GUIDSTRUCT("FB6C4287-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_EDS); | |
DEFINE_GUIDSTRUCT("FB6C4288-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_TELETEXT); | |
DEFINE_GUIDSTRUCT("FB6C4289-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_CC); | |
DEFINE_GUIDSTRUCT("FB6C428A-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_STILL); | |
DEFINE_GUIDSTRUCT("FB6C428B-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_TIMECODE); | |
DEFINE_GUIDSTRUCT("FB6C428C-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_VIDEOPORT_VBI); | |
typedef struct tagKS_FRAME_INFO { | |
ULONG ExtendedHeaderSize; | |
DWORD dwFrameFlags; | |
LONGLONG PictureNumber; | |
LONGLONG DropCount; | |
HANDLE hDirectDraw; | |
HANDLE hSurfaceHandle; | |
RECT DirectDrawRect; | |
DWORD Reserved1; | |
DWORD Reserved2; | |
DWORD Reserved3; | |
DWORD Reserved4; | |
} KS_FRAME_INFO,*PKS_FRAME_INFO; | |
typedef struct tagKS_VBI_FRAME_INFO { | |
ULONG ExtendedHeaderSize; | |
DWORD dwFrameFlags; | |
LONGLONG PictureNumber; | |
LONGLONG DropCount; | |
DWORD dwSamplingFrequency; | |
KS_TVTUNER_CHANGE_INFO TvTunerChangeInfo; | |
KS_VBIINFOHEADER VBIInfoHeader; | |
} KS_VBI_FRAME_INFO,*PKS_VBI_FRAME_INFO; | |
typedef enum | |
{ | |
KS_AnalogVideo_None = 0x00000000, | |
KS_AnalogVideo_NTSC_M = 0x00000001, | |
KS_AnalogVideo_NTSC_M_J = 0x00000002, | |
KS_AnalogVideo_NTSC_433 = 0x00000004, | |
KS_AnalogVideo_PAL_B = 0x00000010, | |
KS_AnalogVideo_PAL_D = 0x00000020, | |
KS_AnalogVideo_PAL_G = 0x00000040, | |
KS_AnalogVideo_PAL_H = 0x00000080, | |
KS_AnalogVideo_PAL_I = 0x00000100, | |
KS_AnalogVideo_PAL_M = 0x00000200, | |
KS_AnalogVideo_PAL_N = 0x00000400, | |
KS_AnalogVideo_PAL_60 = 0x00000800, | |
KS_AnalogVideo_SECAM_B = 0x00001000, | |
KS_AnalogVideo_SECAM_D = 0x00002000, | |
KS_AnalogVideo_SECAM_G = 0x00004000, | |
KS_AnalogVideo_SECAM_H = 0x00008000, | |
KS_AnalogVideo_SECAM_K = 0x00010000, | |
KS_AnalogVideo_SECAM_K1 = 0x00020000, | |
KS_AnalogVideo_SECAM_L = 0x00040000, | |
KS_AnalogVideo_SECAM_L1 = 0x00080000, | |
KS_AnalogVideo_PAL_N_COMBO = 0x00100000 | |
} KS_AnalogVideoStandard; | |
DEFINE_GUIDSTRUCT("53171960-148E-11d2-9979-0000C0CC16BA",PROPSETID_ALLOCATOR_CONTROL); | |
typedef enum { | |
KSPROPERTY_ALLOCATOR_CONTROL_HONOR_COUNT, | |
KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE, | |
KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS, | |
KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE | |
} KSPROPERTY_ALLOCATOR_CONTROL; | |
typedef struct { | |
ULONG CX; | |
ULONG CY; | |
} KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S,*PKSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S; | |
typedef struct { | |
ULONG InterleavedCapSupported; | |
} KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S,*PKSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S; | |
typedef struct { | |
ULONG InterleavedCapPossible; | |
} KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S,*PKSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S; | |
DEFINE_GUIDSTRUCT("C6E13360-30AC-11d0-A18C-00A0C9118956",PROPSETID_VIDCAP_VIDEOPROCAMP); | |
typedef enum { | |
KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS, | |
KSPROPERTY_VIDEOPROCAMP_CONTRAST, | |
KSPROPERTY_VIDEOPROCAMP_HUE, | |
KSPROPERTY_VIDEOPROCAMP_SATURATION, | |
KSPROPERTY_VIDEOPROCAMP_SHARPNESS, | |
KSPROPERTY_VIDEOPROCAMP_GAMMA, | |
KSPROPERTY_VIDEOPROCAMP_COLORENABLE, | |
KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE, | |
KSPROPERTY_VIDEOPROCAMP_BACKLIGHT_COMPENSATION, | |
KSPROPERTY_VIDEOPROCAMP_GAIN, | |
KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER, | |
KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER_LIMIT, | |
KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE_COMPONENT, | |
KSPROPERTY_VIDEOPROCAMP_POWERLINE_FREQUENCY | |
} KSPROPERTY_VIDCAP_VIDEOPROCAMP; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_VIDEOPROCAMP_S,*PKSPROPERTY_VIDEOPROCAMP_S; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_VIDEOPROCAMP_NODE_S,*PKSPROPERTY_VIDEOPROCAMP_NODE_S; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG Value1; | |
ULONG Flags; | |
ULONG Capabilities; | |
LONG Value2; | |
} KSPROPERTY_VIDEOPROCAMP_S2,*PKSPROPERTY_VIDEOPROCAMP_S2; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
LONG Value1; | |
ULONG Flags; | |
ULONG Capabilities; | |
LONG Value2; | |
} KSPROPERTY_VIDEOPROCAMP_NODE_S2,*PKSPROPERTY_VIDEOPROCAMP_NODE_S2; | |
DEFINE_GUIDSTRUCT("1ABDAECA-68B6-4F83-9371-B413907C7B9F",PROPSETID_VIDCAP_SELECTOR); | |
typedef enum { | |
KSPROPERTY_SELECTOR_SOURCE_NODE_ID, | |
KSPROPERTY_SELECTOR_NUM_SOURCES | |
} KSPROPERTY_VIDCAP_SELECTOR,*PKSPROPERTY_VIDCAP_SELECTOR; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_SELECTOR_S,*PKSPROPERTY_SELECTOR_S; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_SELECTOR_NODE_S,*PKSPROPERTY_SELECTOR_NODE_S; | |
DEFINE_GUIDSTRUCT("6a2e0605-28e4-11d0-a18c-00a0c9118956",PROPSETID_TUNER); | |
typedef enum { | |
KSPROPERTY_TUNER_CAPS, | |
KSPROPERTY_TUNER_MODE_CAPS, | |
KSPROPERTY_TUNER_MODE, | |
KSPROPERTY_TUNER_STANDARD, | |
KSPROPERTY_TUNER_FREQUENCY, | |
KSPROPERTY_TUNER_INPUT, | |
KSPROPERTY_TUNER_STATUS, | |
KSPROPERTY_TUNER_IF_MEDIUM | |
} KSPROPERTY_TUNER; | |
typedef enum { | |
KSPROPERTY_TUNER_MODE_TV = 0X0001, | |
KSPROPERTY_TUNER_MODE_FM_RADIO = 0X0002, | |
KSPROPERTY_TUNER_MODE_AM_RADIO = 0X0004, | |
KSPROPERTY_TUNER_MODE_DSS = 0X0008, | |
KSPROPERTY_TUNER_MODE_ATSC = 0X0010 | |
} KSPROPERTY_TUNER_MODES; | |
typedef enum { | |
KS_TUNER_TUNING_EXACT = 1, | |
KS_TUNER_TUNING_FINE, | |
KS_TUNER_TUNING_COARSE | |
} KS_TUNER_TUNING_FLAGS; | |
typedef enum { | |
KS_TUNER_STRATEGY_PLL = 0X01, | |
KS_TUNER_STRATEGY_SIGNAL_STRENGTH = 0X02, | |
KS_TUNER_STRATEGY_DRIVER_TUNES = 0X04 | |
} KS_TUNER_STRATEGY; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG ModesSupported; | |
KSPIN_MEDIUM VideoMedium; | |
KSPIN_MEDIUM TVAudioMedium; | |
KSPIN_MEDIUM RadioAudioMedium; | |
} KSPROPERTY_TUNER_CAPS_S,*PKSPROPERTY_TUNER_CAPS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
KSPIN_MEDIUM IFMedium; | |
} KSPROPERTY_TUNER_IF_MEDIUM_S,*PKSPROPERTY_TUNER_IF_MEDIUM_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Mode; | |
ULONG StandardsSupported; | |
ULONG MinFrequency; | |
ULONG MaxFrequency; | |
ULONG TuningGranularity; | |
ULONG NumberOfInputs; | |
ULONG SettlingTime; | |
ULONG Strategy; | |
} KSPROPERTY_TUNER_MODE_CAPS_S,*PKSPROPERTY_TUNER_MODE_CAPS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Mode; | |
} KSPROPERTY_TUNER_MODE_S,*PKSPROPERTY_TUNER_MODE_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Frequency; | |
ULONG LastFrequency; | |
ULONG TuningFlags; | |
ULONG VideoSubChannel; | |
ULONG AudioSubChannel; | |
ULONG Channel; | |
ULONG Country; | |
} KSPROPERTY_TUNER_FREQUENCY_S,*PKSPROPERTY_TUNER_FREQUENCY_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Standard; | |
} KSPROPERTY_TUNER_STANDARD_S,*PKSPROPERTY_TUNER_STANDARD_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG InputIndex; | |
} KSPROPERTY_TUNER_INPUT_S,*PKSPROPERTY_TUNER_INPUT_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG CurrentFrequency; | |
ULONG PLLOffset; | |
ULONG SignalStrength; | |
ULONG Busy; | |
} KSPROPERTY_TUNER_STATUS_S,*PKSPROPERTY_TUNER_STATUS_S; | |
DEFINE_GUIDSTRUCT("6a2e0606-28e4-11d0-a18c-00a0c9118956",EVENTSETID_TUNER); | |
typedef enum { | |
KSEVENT_TUNER_CHANGED | |
} KSEVENT_TUNER; | |
DEFINE_GUIDSTRUCT("DFF229E1-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_STREAMING); | |
DEFINE_GUIDSTRUCT("DFF229E2-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_INPUT_TERMINAL); | |
DEFINE_GUIDSTRUCT("DFF229E3-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_OUTPUT_TERMINAL); | |
DEFINE_GUIDSTRUCT("DFF229E4-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_SELECTOR); | |
DEFINE_GUIDSTRUCT("DFF229E5-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_PROCESSING); | |
DEFINE_GUIDSTRUCT("DFF229E6-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_CAMERA_TERMINAL); | |
DEFINE_GUIDSTRUCT("DFF229E7-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_INPUT_MTT); | |
DEFINE_GUIDSTRUCT("DFF229E8-F70F-11D0-B917-00A0C9223196",KSNODETYPE_VIDEO_OUTPUT_MTT); | |
DEFINE_GUIDSTRUCT("6a2e0610-28e4-11d0-a18c-00a0c9118956",PROPSETID_VIDCAP_VIDEOENCODER); | |
typedef enum { | |
KSPROPERTY_VIDEOENCODER_CAPS, | |
KSPROPERTY_VIDEOENCODER_STANDARD, | |
KSPROPERTY_VIDEOENCODER_COPYPROTECTION, | |
KSPROPERTY_VIDEOENCODER_CC_ENABLE | |
} KSPROPERTY_VIDCAP_VIDEOENCODER; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_VIDEOENCODER_S,*PKSPROPERTY_VIDEOENCODER_S; | |
DEFINE_GUIDSTRUCT("C6E13350-30AC-11d0-A18C-00A0C9118956",PROPSETID_VIDCAP_VIDEODECODER); | |
typedef enum { | |
KSPROPERTY_VIDEODECODER_CAPS, | |
KSPROPERTY_VIDEODECODER_STANDARD, | |
KSPROPERTY_VIDEODECODER_STATUS, | |
KSPROPERTY_VIDEODECODER_OUTPUT_ENABLE, | |
KSPROPERTY_VIDEODECODER_VCR_TIMING | |
} KSPROPERTY_VIDCAP_VIDEODECODER; | |
typedef enum { | |
KS_VIDEODECODER_FLAGS_CAN_DISABLE_OUTPUT = 0X0001, | |
KS_VIDEODECODER_FLAGS_CAN_USE_VCR_LOCKING = 0X0002, | |
KS_VIDEODECODER_FLAGS_CAN_INDICATE_LOCKED = 0X0004 | |
} KS_VIDEODECODER_FLAGS; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StandardsSupported; | |
ULONG Capabilities; | |
ULONG SettlingTime; | |
ULONG HSyncPerVSync; | |
} KSPROPERTY_VIDEODECODER_CAPS_S,*PKSPROPERTY_VIDEODECODER_CAPS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG NumberOfLines; | |
ULONG SignalLocked; | |
} KSPROPERTY_VIDEODECODER_STATUS_S,*PKSPROPERTY_VIDEODECODER_STATUS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Value; | |
} KSPROPERTY_VIDEODECODER_S,*PKSPROPERTY_VIDEODECODER_S; | |
DEFINE_GUIDSTRUCT("6a2e0621-28e4-11d0-a18c-00a0c9118956",EVENTSETID_VIDEODECODER); | |
typedef enum { | |
KSEVENT_VIDEODECODER_CHANGED | |
} KSEVENT_VIDEODECODER; | |
DEFINE_GUIDSTRUCT("C6E13370-30AC-11d0-A18C-00A0C9118956",PROPSETID_VIDCAP_CAMERACONTROL); | |
typedef enum { | |
KSPROPERTY_CAMERACONTROL_PAN, | |
KSPROPERTY_CAMERACONTROL_TILT, | |
KSPROPERTY_CAMERACONTROL_ROLL, | |
KSPROPERTY_CAMERACONTROL_ZOOM, | |
KSPROPERTY_CAMERACONTROL_EXPOSURE, | |
KSPROPERTY_CAMERACONTROL_IRIS, | |
KSPROPERTY_CAMERACONTROL_FOCUS, | |
KSPROPERTY_CAMERACONTROL_SCANMODE, | |
KSPROPERTY_CAMERACONTROL_PRIVACY, | |
KSPROPERTY_CAMERACONTROL_PANTILT, | |
KSPROPERTY_CAMERACONTROL_PAN_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_TILT_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_ROLL_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_ZOOM_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_EXPOSURE_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_IRIS_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_FOCUS_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_PANTILT_RELATIVE, | |
KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH | |
} KSPROPERTY_VIDCAP_CAMERACONTROL; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_CAMERACONTROL_S,*PKSPROPERTY_CAMERACONTROL_S; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
LONG Value; | |
ULONG Flags; | |
ULONG Capabilities; | |
} KSPROPERTY_CAMERACONTROL_NODE_S,PKSPROPERTY_CAMERACONTROL_NODE_S; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG Value1; | |
ULONG Flags; | |
ULONG Capabilities; | |
LONG Value2; | |
} KSPROPERTY_CAMERACONTROL_S2,*PKSPROPERTY_CAMERACONTROL_S2; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
LONG Value1; | |
ULONG Flags; | |
ULONG Capabilities; | |
LONG Value2; | |
} KSPROPERTY_CAMERACONTROL_NODE_S2,*PKSPROPERTY_CAMERACONTROL_NODE_S2; | |
typedef struct { | |
KSPROPERTY Property; | |
LONG lOcularFocalLength; | |
LONG lObjectiveFocalLengthMin; | |
LONG lObjectiveFocalLengthMax; | |
} KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S,*PKSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S; | |
typedef struct { | |
KSNODEPROPERTY NodeProperty; | |
LONG lOcularFocalLength; | |
LONG lObjectiveFocalLengthMin; | |
LONG lObjectiveFocalLengthMax; | |
} KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S,*PKSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S; | |
DEFINE_GUIDSTRUCT("B5730A90-1A2C-11cf-8C23-00AA006B6814",PROPSETID_EXT_DEVICE); | |
typedef enum { | |
KSPROPERTY_EXTDEVICE_ID, | |
KSPROPERTY_EXTDEVICE_VERSION, | |
KSPROPERTY_EXTDEVICE_POWER_STATE, | |
KSPROPERTY_EXTDEVICE_PORT, | |
KSPROPERTY_EXTDEVICE_CAPABILITIES | |
} KSPROPERTY_EXTDEVICE; | |
typedef struct tagDEVCAPS{ | |
LONG CanRecord; | |
LONG CanRecordStrobe; | |
LONG HasAudio; | |
LONG HasVideo; | |
LONG UsesFiles; | |
LONG CanSave; | |
LONG DeviceType; | |
LONG TCRead; | |
LONG TCWrite; | |
LONG CTLRead; | |
LONG IndexRead; | |
LONG Preroll; | |
LONG Postroll; | |
LONG SyncAcc; | |
LONG NormRate; | |
LONG CanPreview; | |
LONG CanMonitorSrc; | |
LONG CanTest; | |
LONG VideoIn; | |
LONG AudioIn; | |
LONG Calibrate; | |
LONG SeekType; | |
LONG SimulatedHardware; | |
} DEVCAPS,*PDEVCAPS; | |
typedef struct { | |
KSPROPERTY Property; | |
union { | |
DEVCAPS Capabilities; | |
ULONG DevPort; | |
ULONG PowerState; | |
WCHAR pawchString[MAX_PATH]; | |
DWORD NodeUniqueID[2]; | |
} u; | |
} KSPROPERTY_EXTDEVICE_S,*PKSPROPERTY_EXTDEVICE_S; | |
DEFINE_GUIDSTRUCT("A03CD5F0-3045-11cf-8C44-00AA006B6814",PROPSETID_EXT_TRANSPORT); | |
typedef enum { | |
KSPROPERTY_EXTXPORT_CAPABILITIES, | |
KSPROPERTY_EXTXPORT_INPUT_SIGNAL_MODE, | |
KSPROPERTY_EXTXPORT_OUTPUT_SIGNAL_MODE, | |
KSPROPERTY_EXTXPORT_LOAD_MEDIUM, | |
KSPROPERTY_EXTXPORT_MEDIUM_INFO, | |
KSPROPERTY_EXTXPORT_STATE, | |
KSPROPERTY_EXTXPORT_STATE_NOTIFY, | |
KSPROPERTY_EXTXPORT_TIMECODE_SEARCH, | |
KSPROPERTY_EXTXPORT_ATN_SEARCH, | |
KSPROPERTY_EXTXPORT_RTC_SEARCH, | |
KSPROPERTY_RAW_AVC_CMD | |
} KSPROPERTY_EXTXPORT; | |
typedef struct tagTRANSPORTSTATUS { | |
LONG Mode; | |
LONG LastError; | |
LONG RecordInhibit; | |
LONG ServoLock; | |
LONG MediaPresent; | |
LONG MediaLength; | |
LONG MediaSize; | |
LONG MediaTrackCount; | |
LONG MediaTrackLength; | |
LONG MediaTrackSide; | |
LONG MediaType; | |
LONG LinkMode; | |
LONG NotifyOn; | |
} TRANSPORTSTATUS,*PTRANSPORTSTATUS; | |
typedef struct tagTRANSPORTBASICPARMS { | |
LONG TimeFormat; | |
LONG TimeReference; | |
LONG Superimpose; | |
LONG EndStopAction; | |
LONG RecordFormat; | |
LONG StepFrames; | |
LONG SetpField; | |
LONG Preroll; | |
LONG RecPreroll; | |
LONG Postroll; | |
LONG EditDelay; | |
LONG PlayTCDelay; | |
LONG RecTCDelay; | |
LONG EditField; | |
LONG FrameServo; | |
LONG ColorFrameServo; | |
LONG ServoRef; | |
LONG WarnGenlock; | |
LONG SetTracking; | |
TCHAR VolumeName[40]; | |
LONG Ballistic[20]; | |
LONG Speed; | |
LONG CounterFormat; | |
LONG TunerChannel; | |
LONG TunerNumber; | |
LONG TimerEvent; | |
LONG TimerStartDay; | |
LONG TimerStartTime; | |
LONG TimerStopDay; | |
LONG TimerStopTime; | |
} TRANSPORTBASICPARMS,*PTRANSPORTBASICPARMS; | |
typedef struct tagTRANSPORTVIDEOPARMS { | |
LONG OutputMode; | |
LONG Input; | |
} TRANSPORTVIDEOPARMS,*PTRANSPORTVIDEOPARMS; | |
typedef struct tagTRANSPORTAUDIOPARMS { | |
LONG EnableOutput; | |
LONG EnableRecord; | |
LONG EnableSelsync; | |
LONG Input; | |
LONG MonitorSource; | |
} TRANSPORTAUDIOPARMS,*PTRANSPORTAUDIOPARMS; | |
typedef struct { | |
WINBOOL MediaPresent; | |
ULONG MediaType; | |
WINBOOL RecordInhibit; | |
} MEDIUM_INFO,*PMEDIUM_INFO; | |
typedef struct { | |
ULONG Mode; | |
ULONG State; | |
} TRANSPORT_STATE,*PTRANSPORT_STATE; | |
typedef struct { | |
KSPROPERTY Property; | |
union { | |
ULONG Capabilities; | |
ULONG SignalMode; | |
ULONG LoadMedium; | |
MEDIUM_INFO MediumInfo; | |
TRANSPORT_STATE XPrtState; | |
struct { | |
BYTE frame; | |
BYTE second; | |
BYTE minute; | |
BYTE hour; | |
} Timecode; | |
DWORD dwTimecode; | |
DWORD dwAbsTrackNumber; | |
struct { | |
ULONG PayloadSize; | |
BYTE Payload[512]; | |
} RawAVC; | |
} u; | |
} KSPROPERTY_EXTXPORT_S,*PKSPROPERTY_EXTXPORT_S; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
union { | |
ULONG Capabilities; | |
ULONG SignalMode; | |
ULONG LoadMedium; | |
MEDIUM_INFO MediumInfo; | |
TRANSPORT_STATE XPrtState; | |
struct { | |
BYTE frame; | |
BYTE second; | |
BYTE minute; | |
BYTE hour; | |
} Timecode; | |
DWORD dwTimecode; | |
DWORD dwAbsTrackNumber; | |
struct { | |
ULONG PayloadSize; | |
BYTE Payload[512]; | |
} RawAVC; | |
} u; | |
} KSPROPERTY_EXTXPORT_NODE_S,*PKSPROPERTY_EXTXPORT_NODE_S; | |
DEFINE_GUIDSTRUCT("9B496CE1-811B-11cf-8C77-00AA006B6814",PROPSETID_TIMECODE_READER); | |
typedef enum { | |
KSPROPERTY_TIMECODE_READER, | |
KSPROPERTY_ATN_READER, | |
KSPROPERTY_RTC_READER | |
} KSPROPERTY_TIMECODE; | |
typedef union _timecode { | |
struct { | |
WORD wFrameRate; | |
WORD wFrameFract; | |
DWORD dwFrames; | |
}; | |
DWORDLONG qw; | |
} TIMECODE; | |
typedef TIMECODE *PTIMECODE; | |
typedef struct tagTIMECODE_SAMPLE { | |
LONGLONG qwTick; | |
TIMECODE timecode; | |
DWORD dwUser; | |
DWORD dwFlags; | |
} TIMECODE_SAMPLE; | |
typedef TIMECODE_SAMPLE *PTIMECODE_SAMPLE; | |
typedef struct { | |
KSPROPERTY Property; | |
TIMECODE_SAMPLE TimecodeSamp; | |
} KSPROPERTY_TIMECODE_S,*PKSPROPERTY_TIMECODE_S; | |
typedef struct { | |
KSP_NODE NodeProperty; | |
TIMECODE_SAMPLE TimecodeSamp; | |
} KSPROPERTY_TIMECODE_NODE_S,*PKSPROPERTY_TIMECODE_NODE_S; | |
DEFINE_GUIDSTRUCT("109c7988-b3cb-11d2-b48e-006097b3391b",KSEVENTSETID_EXTDEV_Command); | |
typedef enum { | |
KSEVENT_EXTDEV_COMMAND_NOTIFY_INTERIM_READY, | |
KSEVENT_EXTDEV_COMMAND_CONTROL_INTERIM_READY, | |
KSEVENT_EXTDEV_COMMAND_BUSRESET, | |
KSEVENT_EXTDEV_TIMECODE_UPDATE, | |
KSEVENT_EXTDEV_OPERATION_MODE_UPDATE, | |
KSEVENT_EXTDEV_TRANSPORT_STATE_UPDATE, | |
KSEVENT_EXTDEV_NOTIFY_REMOVAL, | |
KSEVENT_EXTDEV_NOTIFY_MEDIUM_CHANGE | |
} KSEVENT_DEVCMD; | |
DEFINE_GUIDSTRUCT("6a2e0640-28e4-11d0-a18c-00a0c9118956",PROPSETID_VIDCAP_CROSSBAR); | |
typedef enum { | |
KSPROPERTY_CROSSBAR_CAPS, | |
KSPROPERTY_CROSSBAR_PININFO, | |
KSPROPERTY_CROSSBAR_CAN_ROUTE, | |
KSPROPERTY_CROSSBAR_ROUTE | |
} KSPROPERTY_VIDCAP_CROSSBAR; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG NumberOfInputs; | |
ULONG NumberOfOutputs; | |
} KSPROPERTY_CROSSBAR_CAPS_S,*PKSPROPERTY_CROSSBAR_CAPS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
KSPIN_DATAFLOW Direction; | |
ULONG Index; | |
ULONG PinType; | |
ULONG RelatedPinIndex; | |
KSPIN_MEDIUM Medium; | |
} KSPROPERTY_CROSSBAR_PININFO_S,*PKSPROPERTY_CROSSBAR_PININFO_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG IndexInputPin; | |
ULONG IndexOutputPin; | |
ULONG CanRoute; | |
} KSPROPERTY_CROSSBAR_ROUTE_S,*PKSPROPERTY_CROSSBAR_ROUTE_S; | |
DEFINE_GUIDSTRUCT("6a2e0641-28e4-11d0-a18c-00a0c9118956",EVENTSETID_CROSSBAR); | |
typedef enum { | |
KSEVENT_CROSSBAR_CHANGED | |
} KSEVENT_CROSSBAR; | |
typedef enum { | |
KS_PhysConn_Video_Tuner = 1, | |
KS_PhysConn_Video_Composite, | |
KS_PhysConn_Video_SVideo, | |
KS_PhysConn_Video_RGB, | |
KS_PhysConn_Video_YRYBY, | |
KS_PhysConn_Video_SerialDigital, | |
KS_PhysConn_Video_ParallelDigital, | |
KS_PhysConn_Video_SCSI, | |
KS_PhysConn_Video_AUX, | |
KS_PhysConn_Video_1394, | |
KS_PhysConn_Video_USB, | |
KS_PhysConn_Video_VideoDecoder, | |
KS_PhysConn_Video_VideoEncoder, | |
KS_PhysConn_Video_SCART, | |
KS_PhysConn_Audio_Tuner = 4096, | |
KS_PhysConn_Audio_Line, | |
KS_PhysConn_Audio_Mic, | |
KS_PhysConn_Audio_AESDigital, | |
KS_PhysConn_Audio_SPDIFDigital, | |
KS_PhysConn_Audio_SCSI, | |
KS_PhysConn_Audio_AUX, | |
KS_PhysConn_Audio_1394, | |
KS_PhysConn_Audio_USB, | |
KS_PhysConn_Audio_AudioDecoder | |
} KS_PhysicalConnectorType; | |
DEFINE_GUIDSTRUCT("6a2e0650-28e4-11d0-a18c-00a0c9118956",PROPSETID_VIDCAP_TVAUDIO); | |
typedef enum { | |
KSPROPERTY_TVAUDIO_CAPS, | |
KSPROPERTY_TVAUDIO_MODE, | |
KSPROPERTY_TVAUDIO_CURRENTLY_AVAILABLE_MODES | |
} KSPROPERTY_VIDCAP_TVAUDIO; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Capabilities; | |
KSPIN_MEDIUM InputMedium; | |
KSPIN_MEDIUM OutputMedium; | |
} KSPROPERTY_TVAUDIO_CAPS_S,*PKSPROPERTY_TVAUDIO_CAPS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG Mode; | |
} KSPROPERTY_TVAUDIO_S,*PKSPROPERTY_TVAUDIO_S; | |
DEFINE_GUIDSTRUCT("6a2e0651-28e4-11d0-a18c-00a0c9118956",KSEVENTSETID_VIDCAP_TVAUDIO); | |
typedef enum { | |
KSEVENT_TVAUDIO_CHANGED | |
} KSEVENT_TVAUDIO; | |
DEFINE_GUIDSTRUCT("C6E13343-30AC-11d0-A18C-00A0C9118956",PROPSETID_VIDCAP_VIDEOCOMPRESSION); | |
typedef enum { | |
KSPROPERTY_VIDEOCOMPRESSION_GETINFO, | |
KSPROPERTY_VIDEOCOMPRESSION_KEYFRAME_RATE, | |
KSPROPERTY_VIDEOCOMPRESSION_PFRAMES_PER_KEYFRAME, | |
KSPROPERTY_VIDEOCOMPRESSION_QUALITY, | |
KSPROPERTY_VIDEOCOMPRESSION_OVERRIDE_KEYFRAME, | |
KSPROPERTY_VIDEOCOMPRESSION_OVERRIDE_FRAME_SIZE, | |
KSPROPERTY_VIDEOCOMPRESSION_WINDOWSIZE | |
} KSPROPERTY_VIDCAP_VIDEOCOMPRESSION; | |
typedef enum { | |
KS_CompressionCaps_CanQuality = 1, | |
KS_CompressionCaps_CanCrunch = 2, | |
KS_CompressionCaps_CanKeyFrame = 4, | |
KS_CompressionCaps_CanBFrame = 8, | |
KS_CompressionCaps_CanWindow = 0x10 | |
} KS_CompressionCaps; | |
typedef enum { | |
KS_StreamingHint_FrameInterval = 0x0100, | |
KS_StreamingHint_KeyFrameRate = 0x0200, | |
KS_StreamingHint_PFrameRate = 0x0400, | |
KS_StreamingHint_CompQuality = 0x0800, | |
KS_StreamingHint_CompWindowSize = 0x1000 | |
} KS_VideoStreamingHints; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
LONG DefaultKeyFrameRate; | |
LONG DefaultPFrameRate; | |
LONG DefaultQuality; | |
LONG NumberOfQualitySettings; | |
LONG Capabilities; | |
} KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S,*PKSPROPERTY_VIDEOCOMPRESSION_GETINFO_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
LONG Value; | |
} KSPROPERTY_VIDEOCOMPRESSION_S,*PKSPROPERTY_VIDEOCOMPRESSION_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
LONG Value; | |
ULONG Flags; | |
} KSPROPERTY_VIDEOCOMPRESSION_S1,*PKSPROPERTY_VIDEOCOMPRESSION_S1; | |
DEFINE_GUIDSTRUCT("e436eb7f-524f-11ce-9f53-0020af0ba770",KSDATAFORMAT_SUBTYPE_OVERLAY); | |
DEFINE_GUIDSTRUCT("490EA5CF-7681-11D1-A21C-00A0C9223196",KSPROPSETID_OverlayUpdate); | |
typedef enum { | |
KSPROPERTY_OVERLAYUPDATE_INTERESTS, | |
KSPROPERTY_OVERLAYUPDATE_CLIPLIST = 0x1, | |
KSPROPERTY_OVERLAYUPDATE_PALETTE = 0x2, | |
KSPROPERTY_OVERLAYUPDATE_COLORKEY = 0x4, | |
KSPROPERTY_OVERLAYUPDATE_VIDEOPOSITION = 0x8, | |
KSPROPERTY_OVERLAYUPDATE_DISPLAYCHANGE = 0x10, | |
KSPROPERTY_OVERLAYUPDATE_COLORREF = 0x10000000 | |
} KSPROPERTY_OVERLAYUPDATE; | |
typedef struct { | |
ULONG PelsWidth; | |
ULONG PelsHeight; | |
ULONG BitsPerPel; | |
WCHAR DeviceID[1]; | |
} KSDISPLAYCHANGE,*PKSDISPLAYCHANGE; | |
DEFINE_GUIDSTRUCT("6a2e0670-28e4-11d0-a18c-00a0c9118956",PROPSETID_VIDCAP_VIDEOCONTROL); | |
typedef enum { | |
KSPROPERTY_VIDEOCONTROL_CAPS, | |
KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE, | |
KSPROPERTY_VIDEOCONTROL_FRAME_RATES, | |
KSPROPERTY_VIDEOCONTROL_MODE | |
} KSPROPERTY_VIDCAP_VIDEOCONTROL; | |
typedef enum { | |
KS_VideoControlFlag_FlipHorizontal = 0x0001, | |
KS_VideoControlFlag_FlipVertical = 0x0002, | |
KS_Obsolete_VideoControlFlag_ExternalTriggerEnable = 0x0010, | |
KS_Obsolete_VideoControlFlag_Trigger = 0x0020, | |
KS_VideoControlFlag_ExternalTriggerEnable = 0x0004, | |
KS_VideoControlFlag_Trigger = 0x0008 | |
} KS_VideoControlFlags; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
ULONG VideoControlCaps; | |
} KSPROPERTY_VIDEOCONTROL_CAPS_S,*PKSPROPERTY_VIDEOCONTROL_CAPS_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
LONG Mode; | |
} KSPROPERTY_VIDEOCONTROL_MODE_S,*PKSPROPERTY_VIDEOCONTROL_MODE_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
ULONG RangeIndex; | |
SIZE Dimensions; | |
LONGLONG CurrentActualFrameRate; | |
LONGLONG CurrentMaxAvailableFrameRate; | |
} KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S,*PKSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S; | |
typedef struct { | |
KSPROPERTY Property; | |
ULONG StreamIndex; | |
ULONG RangeIndex; | |
SIZE Dimensions; | |
} KSPROPERTY_VIDEOCONTROL_FRAME_RATES_S,*PKSPROPERTY_VIDEOCONTROL_FRAME_RATES_S; | |
DEFINE_GUIDSTRUCT("C6E13344-30AC-11d0-A18C-00A0C9118956",PROPSETID_VIDCAP_DROPPEDFRAMES); | |
typedef enum { | |
KSPROPERTY_DROPPEDFRAMES_CURRENT | |
} KSPROPERTY_VIDCAP_DROPPEDFRAMES; | |
typedef struct { | |
KSPROPERTY Property; | |
LONGLONG PictureNumber; | |
LONGLONG DropCount; | |
ULONG AverageFrameSize; | |
} KSPROPERTY_DROPPEDFRAMES_CURRENT_S,*PKSPROPERTY_DROPPEDFRAMES_CURRENT_S; | |
DEFINE_GUIDSTRUCT("bc29a660-30e3-11d0-9e69-00c04fd7c15b",KSPROPSETID_VPConfig); | |
DEFINE_GUIDSTRUCT("ec529b00-1a1f-11d1-bad9-00609744111a",KSPROPSETID_VPVBIConfig); | |
typedef enum { | |
KSPROPERTY_VPCONFIG_NUMCONNECTINFO, | |
KSPROPERTY_VPCONFIG_GETCONNECTINFO, | |
KSPROPERTY_VPCONFIG_SETCONNECTINFO, | |
KSPROPERTY_VPCONFIG_VPDATAINFO, | |
KSPROPERTY_VPCONFIG_MAXPIXELRATE, | |
KSPROPERTY_VPCONFIG_INFORMVPINPUT, | |
KSPROPERTY_VPCONFIG_NUMVIDEOFORMAT, | |
KSPROPERTY_VPCONFIG_GETVIDEOFORMAT, | |
KSPROPERTY_VPCONFIG_SETVIDEOFORMAT, | |
KSPROPERTY_VPCONFIG_INVERTPOLARITY, | |
KSPROPERTY_VPCONFIG_DECIMATIONCAPABILITY, | |
KSPROPERTY_VPCONFIG_SCALEFACTOR, | |
KSPROPERTY_VPCONFIG_DDRAWHANDLE, | |
KSPROPERTY_VPCONFIG_VIDEOPORTID, | |
KSPROPERTY_VPCONFIG_DDRAWSURFACEHANDLE, | |
KSPROPERTY_VPCONFIG_SURFACEPARAMS | |
} KSPROPERTY_VPCONFIG; | |
DEFINE_GUIDSTRUCT("b9f8ac3e-0f71-11d2-b72c-00c04fb6bd3d",CLSID_KsIBasicAudioInterfaceHandler); | |
typedef struct { | |
AMVPSIZE Size; | |
DWORD MaxPixelsPerSecond; | |
DWORD Reserved; | |
} KSVPMAXPIXELRATE,*PKSVPMAXPIXELRATE; | |
typedef struct { | |
KSPROPERTY Property; | |
AMVPSIZE Size; | |
} KSVPSIZE_PROP,*PKSVPSIZE_PROP; | |
typedef struct { | |
DWORD dwPitch; | |
DWORD dwXOrigin; | |
DWORD dwYOrigin; | |
} KSVPSURFACEPARAMS,*PKSVPSURFACEPARAMS; | |
typedef struct _DDPIXELFORMAT | |
{ | |
DWORD dwSize; | |
DWORD dwFlags; | |
DWORD dwFourCC; | |
__MINGW_EXTENSION union | |
{ | |
DWORD dwRGBBitCount; | |
DWORD dwYUVBitCount; | |
DWORD dwZBufferBitDepth; | |
DWORD dwAlphaBitDepth; | |
}; | |
__MINGW_EXTENSION union | |
{ | |
DWORD dwRBitMask; | |
DWORD dwYBitMask; | |
}; | |
__MINGW_EXTENSION union | |
{ | |
DWORD dwGBitMask; | |
DWORD dwUBitMask; | |
}; | |
__MINGW_EXTENSION union | |
{ | |
DWORD dwBBitMask; | |
DWORD dwVBitMask; | |
}; | |
__MINGW_EXTENSION union | |
{ | |
DWORD dwRGBAlphaBitMask; | |
DWORD dwYUVAlphaBitMask; | |
DWORD dwRGBZBitMask; | |
DWORD dwYUVZBitMask; | |
}; | |
} DDPIXELFORMAT,*LPDDPIXELFORMAT; | |
typedef struct _DDVIDEOPORTCONNECT { | |
DWORD dwSize; | |
DWORD dwPortWidth; | |
GUID guidTypeID; | |
DWORD dwFlags; | |
ULONG_PTR dwReserved1; | |
} DDVIDEOPORTCONNECT,*LPDDVIDEOPORTCONNECT; | |
typedef enum | |
{ | |
KS_PixAspectRatio_NTSC4x3, | |
KS_PixAspectRatio_NTSC16x9, | |
KS_PixAspectRatio_PAL4x3, | |
KS_PixAspectRatio_PAL16x9 | |
} KS_AMPixAspectRatio; | |
typedef enum | |
{ | |
KS_AMVP_DO_NOT_CARE, | |
KS_AMVP_BEST_BANDWIDTH, | |
KS_AMVP_INPUT_SAME_AS_OUTPUT | |
} KS_AMVP_SELECTFORMATBY; | |
typedef enum | |
{ | |
KS_AMVP_MODE_WEAVE, | |
KS_AMVP_MODE_BOBINTERLEAVED, | |
KS_AMVP_MODE_BOBNONINTERLEAVED, | |
KS_AMVP_MODE_SKIPEVEN, | |
KS_AMVP_MODE_SKIPODD | |
} KS_AMVP_MODE; | |
typedef struct tagKS_AMVPDIMINFO | |
{ | |
DWORD dwFieldWidth; | |
DWORD dwFieldHeight; | |
DWORD dwVBIWidth; | |
DWORD dwVBIHeight; | |
RECT rcValidRegion; | |
} KS_AMVPDIMINFO,*PKS_AMVPDIMINFO; | |
typedef struct tagKS_AMVPDATAINFO | |
{ | |
DWORD dwSize; | |
DWORD dwMicrosecondsPerField; | |
KS_AMVPDIMINFO amvpDimInfo; | |
DWORD dwPictAspectRatioX; | |
DWORD dwPictAspectRatioY; | |
WINBOOL bEnableDoubleClock; | |
WINBOOL bEnableVACT; | |
WINBOOL bDataIsInterlaced; | |
LONG lHalfLinesOdd; | |
WINBOOL bFieldPolarityInverted; | |
DWORD dwNumLinesInVREF; | |
LONG lHalfLinesEven; | |
DWORD dwReserved1; | |
} KS_AMVPDATAINFO,*PKS_AMVPDATAINFO; | |
typedef struct tagKS_AMVPSIZE | |
{ | |
DWORD dwWidth; | |
DWORD dwHeight; | |
} KS_AMVPSIZE,*PKS_AMVPSIZE; | |
typedef struct { | |
KS_AMVPSIZE Size; | |
DWORD MaxPixelsPerSecond; | |
DWORD Reserved; | |
} KSVPMAXPIXELRATE,*PKSVPMAXPIXELRATE; | |
typedef struct { | |
KSPROPERTY Property; | |
KS_AMVPSIZE Size; | |
} KSVPSIZE_PROP,*PKSVPSIZE_PROP; | |
typedef struct { | |
DWORD dwPitch; | |
DWORD dwXOrigin; | |
DWORD dwYOrigin; | |
} KSVPSURFACEPARAMS,*PKSVPSURFACEPARAMS; | |
DEFINE_GUIDSTRUCT("20c5598e-d3c8-11d0-8dfc-00c04fd7c08b",KSEVENTSETID_VPNotify); | |
typedef enum { | |
KSEVENT_VPNOTIFY_FORMATCHANGE | |
} KSEVENT_VPNOTIFY; | |
DEFINE_GUIDSTRUCT("DB47DE20-F628-11d1-BA41-00A0C90D2B05",KSEVENTSETID_VIDCAPTOSTI); | |
typedef enum { | |
KSEVENT_VIDCAPTOSTI_EXT_TRIGGER, | |
KSEVENT_VIDCAP_AUTO_UPDATE, | |
KSEVENT_VIDCAP_SEARCH | |
} KSEVENT_VIDCAPTOSTI; | |
typedef enum { | |
KSPROPERTY_EXTENSION_UNIT_INFO, | |
KSPROPERTY_EXTENSION_UNIT_CONTROL, | |
KSPROPERTY_EXTENSION_UNIT_PASS_THROUGH = 0xffff | |
} KSPROPERTY_EXTENSION_UNIT,*PKSPROPERTY_EXTENSION_UNIT; | |
DEFINE_GUIDSTRUCT("ec529b01-1a1f-11d1-bad9-00609744111a",KSEVENTSETID_VPVBINotify); | |
typedef enum { | |
KSEVENT_VPVBINOTIFY_FORMATCHANGE | |
} KSEVENT_VPVBINOTIFY; | |
DEFINE_GUIDSTRUCT("670aea80-3a82-11d0-b79b-00aa003767a7",KSDATAFORMAT_TYPE_AUXLine21Data); | |
DEFINE_GUIDSTRUCT("6e8d4a22-310c-11d0-b79a-00aa003767a7",KSDATAFORMAT_SUBTYPE_Line21_BytePair); | |
DEFINE_GUIDSTRUCT("6e8d4a23-310c-11d0-b79a-00aa003767a7",KSDATAFORMAT_SUBTYPE_Line21_GOPPacket); | |
typedef struct _KSGOP_USERDATA { | |
ULONG sc; | |
ULONG reserved1; | |
BYTE cFields; | |
CHAR l21Data[3]; | |
} KSGOP_USERDATA,*PKSGOP_USERDATA; | |
DEFINE_GUIDSTRUCT("ed0b916a-044d-11d1-aa78-00c04fc31d60",KSDATAFORMAT_TYPE_DVD_ENCRYPTED_PACK); | |
DEFINE_GUIDSTRUCT("A503C5C0-1D1D-11D1-AD80-444553540000",KSPROPSETID_TSRateChange); | |
typedef enum { | |
KS_AM_RATE_SimpleRateChange = 1, | |
KS_AM_RATE_ExactRateChange = 2, | |
KS_AM_RATE_MaxFullDataRate = 3, | |
KS_AM_RATE_Step = 4 | |
} KS_AM_PROPERTY_TS_RATE_CHANGE; | |
typedef struct { | |
REFERENCE_TIME StartTime; | |
LONG Rate; | |
} KS_AM_SimpleRateChange,*PKS_AM_SimpleRateChange; | |
typedef struct { | |
REFERENCE_TIME OutputZeroTime; | |
LONG Rate; | |
} KS_AM_ExactRateChange,*PKS_AM_ExactRateChange; | |
typedef LONG KS_AM_MaxFullDataRate; | |
typedef DWORD KS_AM_Step; | |
DEFINE_GUIDSTRUCT("19689BF6-C384-48fd-AD51-90E58C79F70B",KSCATEGORY_ENCODER); | |
DEFINE_GUIDSTRUCT("7A5DE1D3-01A1-452c-B481-4FA2B96271E8",KSCATEGORY_MULTIPLEXER); | |
DEFINE_GUIDSTRUCT("49CC4C43-CA83-4ad4-A9AF-F3696AF666DF",ENCAPIPARAM_BITRATE); | |
DEFINE_GUIDSTRUCT("703F16A9-3D48-44a1-B077-018DFF915D19",ENCAPIPARAM_PEAK_BITRATE); | |
DEFINE_GUIDSTRUCT("EE5FB25C-C713-40d1-9D58-C0D7241E250F",ENCAPIPARAM_BITRATE_MODE); | |
DEFINE_GUIDSTRUCT("62B12ACF-F6B0-47D9-9456-96F22C4E0B9D",CODECAPI_CHANGELISTS); | |
DEFINE_GUIDSTRUCT("7112E8E1-3D03-47EF-8E60-03F1CF537301",CODECAPI_VIDEO_ENCODER); | |
DEFINE_GUIDSTRUCT("B9D19A3E-F897-429C-BC46-8138B7272B2D",CODECAPI_AUDIO_ENCODER); | |
DEFINE_GUIDSTRUCT("6C5E6A7C-ACF8-4F55-A999-1A628109051B",CODECAPI_SETALLDEFAULTS); | |
DEFINE_GUIDSTRUCT("6A577E92-83E1-4113-ADC2-4FCEC32F83A1",CODECAPI_ALLSETTINGS); | |
DEFINE_GUIDSTRUCT("0581AF97-7693-4DBD-9DCA-3F9EBD6585A1",CODECAPI_SUPPORTSEVENTS); | |
DEFINE_GUIDSTRUCT("1CB14E83-7D72-4657-83FD-47A2C5B9D13D",CODECAPI_CURRENTCHANGELIST); | |
typedef enum { | |
ConstantBitRate = 0, | |
VariableBitRateAverage, | |
VariableBitRatePeak | |
} VIDEOENCODER_BITRATE_MODE; | |
DEFINE_GUIDSTRUCT("4509F757-2D46-4637-8E62-CE7DB944F57B", KSPROPSETID_Jack); | |
typedef enum { | |
KSPROPERTY_JACK_DESCRIPTION = 1, | |
KSPROPERTY_JACK_DESCRIPTION2, | |
KSPROPERTY_JACK_SINK_INFO | |
} KSPROPERTY_JACK; | |
typedef enum | |
{ | |
eConnTypeUnknown, | |
eConnType3Point5mm, | |
eConnTypeQuarter, | |
eConnTypeAtapiInternal, | |
eConnTypeRCA, | |
eConnTypeOptical, | |
eConnTypeOtherDigital, | |
eConnTypeOtherAnalog, | |
eConnTypeMultichannelAnalogDIN, | |
eConnTypeXlrProfessional, | |
eConnTypeRJ11Modem, | |
eConnTypeCombination | |
} EPcxConnectionType; | |
typedef enum | |
{ | |
eGeoLocRear = 0x1, | |
eGeoLocFront, | |
eGeoLocLeft, | |
eGeoLocRight, | |
eGeoLocTop, | |
eGeoLocBottom, | |
eGeoLocRearPanel, | |
eGeoLocRiser, | |
eGeoLocInsideMobileLid, | |
eGeoLocDrivebay, | |
eGeoLocHDMI, | |
eGeoLocOutsideMobileLid, | |
eGeoLocATAPI, | |
eGeoLocReserved5, | |
eGeoLocReserved6, | |
EPcxGeoLocation_enum_count | |
} EPcxGeoLocation; | |
typedef enum | |
{ | |
eGenLocPrimaryBox = 0, | |
eGenLocInternal, | |
eGenLocSeparate, | |
eGenLocOther, | |
EPcxGenLocation_enum_count | |
} EPcxGenLocation; | |
typedef enum | |
{ | |
ePortConnJack = 0, | |
ePortConnIntegratedDevice, | |
ePortConnBothIntegratedAndJack, | |
ePortConnUnknown | |
} EPxcPortConnection; | |
typedef struct | |
{ | |
DWORD ChannelMapping; | |
COLORREF Color; | |
EPcxConnectionType ConnectionType; | |
EPcxGeoLocation GeoLocation; | |
EPcxGenLocation GenLocation; | |
EPxcPortConnection PortConnection; | |
BOOL IsConnected; | |
} KSJACK_DESCRIPTION, *PKSJACK_DESCRIPTION; | |
typedef enum | |
{ | |
KSJACK_SINK_CONNECTIONTYPE_HDMI = 0, | |
KSJACK_SINK_CONNECTIONTYPE_DISPLAYPORT, | |
} KSJACK_SINK_CONNECTIONTYPE; | |
typedef struct _tagKSJACK_SINK_INFORMATION | |
{ | |
KSJACK_SINK_CONNECTIONTYPE ConnType; | |
WORD ManufacturerId; | |
WORD ProductId; | |
WORD AudioLatency; | |
BOOL HDCPCapable; | |
BOOL AICapable; | |
UCHAR SinkDescriptionLength; | |
WCHAR SinkDescription[MAX_SINK_DESCRIPTION_NAME_LENGTH]; | |
LUID PortId; | |
} KSJACK_SINK_INFORMATION, *PKSJACK_SINK_INFORMATION; | |
typedef struct _tagKSJACK_DESCRIPTION2 | |
{ | |
DWORD DeviceStateInfo; | |
DWORD JackCapabilities; | |
} KSJACK_DESCRIPTION2, *PKSJACK_DESCRIPTION2; | |
/* Additional structs for Windows Vista and later */ | |
typedef struct _tagKSRTAUDIO_BUFFER_PROPERTY { | |
KSPROPERTY Property; | |
PVOID BaseAddress; | |
ULONG RequestedBufferSize; | |
} KSRTAUDIO_BUFFER_PROPERTY, *PKSRTAUDIO_BUFFER_PROPERTY; | |
typedef struct _tagKSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION { | |
KSPROPERTY Property; | |
PVOID BaseAddress; | |
ULONG RequestedBufferSize; | |
ULONG NotificationCount; | |
} KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION, *PKSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION; | |
typedef struct _tagKSRTAUDIO_BUFFER { | |
PVOID BufferAddress; | |
ULONG ActualBufferSize; | |
BOOL CallMemoryBarrier; | |
} KSRTAUDIO_BUFFER, *PKSRTAUDIO_BUFFER; | |
typedef struct _tagKSRTAUDIO_HWLATENCY { | |
ULONG FifoSize; | |
ULONG ChipsetDelay; | |
ULONG CodecDelay; | |
} KSRTAUDIO_HWLATENCY, *PKSRTAUDIO_HWLATENCY; | |
typedef struct _tagKSRTAUDIO_HWREGISTER_PROPERTY { | |
KSPROPERTY Property; | |
PVOID BaseAddress; | |
} KSRTAUDIO_HWREGISTER_PROPERTY, *PKSRTAUDIO_HWREGISTER_PROPERTY; | |
typedef struct _tagKSRTAUDIO_HWREGISTER { | |
PVOID Register; | |
ULONG Width; | |
ULONGLONG Numerator; | |
ULONGLONG Denominator; | |
ULONG Accuracy; | |
} KSRTAUDIO_HWREGISTER, *PKSRTAUDIO_HWREGISTER; | |
typedef struct _tagKSRTAUDIO_NOTIFICATION_EVENT_PROPERTY { | |
KSPROPERTY Property; | |
HANDLE NotificationEvent; | |
} KSRTAUDIO_NOTIFICATION_EVENT_PROPERTY, *PKSRTAUDIO_NOTIFICATION_EVENT_PROPERTY; | |