mirror of
https://github.com/reactos/reactos.git
synced 2024-06-30 01:42:30 +00:00
[PSDK]
- Add some KS definitions. Patch by Lee Schroeder CORE-6783 svn path=/trunk/; revision=72962
This commit is contained in:
parent
6a96846321
commit
1da8f46087
|
@ -115,6 +115,11 @@ DEFINE_GUIDSTRUCT("9b365890-165f-11d0-a195-0020afd156e4", KSNAME_Filter);
|
|||
DEFINE_GUIDSTRUCT("d833f8f8-7894-11d1-b069-00a0c9062802", KSMEMORY_TYPE_KERNEL_PAGED);
|
||||
#define KSMEMORY_TYPE_KERNEL_PAGED DEFINE_GUIDNAMED(KSMEMORY_TYPE_KERNEL_PAGED)
|
||||
|
||||
#define STATIC_KSDATAFORMAT_SUBTYPE_NONE \
|
||||
0xe436eb8eL, 0x524f, 0x11ce, {0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70}
|
||||
DEFINE_GUIDSTRUCT("e436eb8e-524f-11ce-9f53-0020af0ba770", KSDATAFORMAT_SUBTYPE_NONE);
|
||||
#define KSDATAFORMAT_SUBTYPE_NONE DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_NONE)
|
||||
|
||||
/* ===============================================================
|
||||
I/O Control Codes
|
||||
*/
|
||||
|
|
|
@ -235,6 +235,21 @@ DEFINE_GUIDSTRUCT("9EA331FA-B91B-45F8-9285-BD2BC77AFCDE", KSCATEGORY_AUDIO_SPLIT
|
|||
#define STATIC_KSCATEGORY_DRM_DESCRAMBLE STATIC_KSNODETYPE_DRM_DESCRAMBLE
|
||||
#define KSCATEGORY_DRM_DESCRAMBLE KSNODETYPE_DRM_DESCRAMBLE
|
||||
|
||||
#define STATIC_KSDATAFORMAT_SPECIFIER_ANALOGVIDEO \
|
||||
0x0482DDE0L, 0x7817, 0x11CF, {0x8A, 0x03, 0x00, 0xAA, 0x00, 0x6E, 0xCB, 0x65}
|
||||
DEFINE_GUIDSTRUCT("0482DDE0-7817-11CF-8A03-00AA006ECB65", KSDATAFORMAT_SPECIFIER_ANALOGVIDEO);
|
||||
#define KSDATAFORMAT_SPECIFIER_ANALOGVIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_ANALOGVIDEO)
|
||||
|
||||
#define STATIC_KSDATAFORMAT_TYPE_ANALOGVIDEO \
|
||||
0x0482DDE1L, 0x7817, 0x11CF, {0x8A, 0x03, 0x00, 0xAA, 0x00, 0x6E, 0xCB, 0x65}
|
||||
DEFINE_GUIDSTRUCT("0482DDE1-7817-11CF-8A03-00AA006ECB65", KSDATAFORMAT_TYPE_ANALOGVIDEO);
|
||||
#define KSDATAFORMAT_TYPE_ANALOGVIDEO DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_ANALOGVIDEO)
|
||||
|
||||
#define STATIC_PINNAME_VIDEO_ANALOGVIDEOIN \
|
||||
0xFB6C4283L, 0x0353, 0x11D1, {0x90, 0x5F, 0x00, 0x00, 0xC0, 0xCC, 0x16, 0xBA}
|
||||
DEFINE_GUIDSTRUCT("FB6C4283-0353-11D1-905F-0000C0CC16BA", PINNAME_VIDEO_ANALOGVIDEOIN);
|
||||
#define PINNAME_VIDEO_ANALOGVIDEOIN DEFINE_GUIDNAMED(PINNAME_VIDEO_ANALOGVIDEOIN)
|
||||
|
||||
/*
|
||||
Nodes
|
||||
*/
|
||||
|
@ -551,6 +566,13 @@ typedef struct {
|
|||
|
||||
//#endif
|
||||
|
||||
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 {
|
||||
KSDATARANGE DataRange;
|
||||
ULONG MaximumChannels;
|
||||
|
@ -560,6 +582,276 @@ typedef struct {
|
|||
ULONG MaximumSampleFrequency;
|
||||
} KSDATARANGE_AUDIO, *PKSDATARANGE_AUDIO;
|
||||
|
||||
typedef struct tagKS_AnalogVideoInfo {
|
||||
RECT rcSource;
|
||||
RECT rcTarget;
|
||||
DWORD dwActiveWidth;
|
||||
DWORD dwActiveHeight;
|
||||
REFERENCE_TIME AvgTimePerFrame;
|
||||
} KS_ANALOGVIDEOINFO, *PKS_ANALOGVIDEOINFO;
|
||||
|
||||
typedef struct tagKS_DATARANGE_ANALOGVIDEO {
|
||||
KSDATARANGE DataRange;
|
||||
KS_ANALOGVIDEOINFO AnalogVideoInfo;
|
||||
} KS_DATARANGE_ANALOGVIDEO, *PKS_DATARANGE_ANALOGVIDEO;
|
||||
|
||||
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;
|
||||
} 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;
|
||||
|
||||
typedef enum {
|
||||
KSEVENT_TUNER_CHANGED,
|
||||
KSEVENT_TUNER_INITIATE_SCAN
|
||||
} KSEVENT_TUNER;
|
||||
|
||||
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;
|
||||
|
||||
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 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 _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_FRAME_INFO {
|
||||
ULONG ExtendedHeaderSize;
|
||||
DWORD dwFrameFlags;
|
||||
LONGLONG PictureNumber;
|
||||
LONGLONG DropCount;
|
||||
HANDLE hDirectDraw;
|
||||
HANDLE hSurfaceHandle;
|
||||
RECT DirectDrawRect;
|
||||
union {
|
||||
LONG lSurfacePitch;
|
||||
DWORD Reserved1;
|
||||
};
|
||||
DWORD Reserved2;
|
||||
union {
|
||||
struct {
|
||||
DWORD Reserved3;
|
||||
DWORD Reserved4;
|
||||
};
|
||||
ULONGLONG FrameCompletionNumber;
|
||||
};
|
||||
} KS_FRAME_INFO, *PKS_FRAME_INFO;
|
||||
|
||||
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_VIDEOINFOHEADER2 {
|
||||
RECT rcSource;
|
||||
RECT rcTarget;
|
||||
DWORD dwBitRate;
|
||||
DWORD dwBitErrorRate;
|
||||
REFERENCE_TIME AvgTimePerFrame;
|
||||
DWORD dwInterlaceFlags;
|
||||
DWORD dwCopyProtectFlags;
|
||||
DWORD dwPictAspectRatioX;
|
||||
DWORD dwPictAspectRatioY;
|
||||
union {
|
||||
DWORD dwControlFlags;
|
||||
DWORD dwReserved1;
|
||||
};
|
||||
DWORD dwReserved2;
|
||||
KS_BITMAPINFOHEADER bmiHeader;
|
||||
} KS_VIDEOINFOHEADER2, *PKS_VIDEOINFOHEADER2;
|
||||
|
||||
typedef struct tagKS_DATARANGE_VIDEO {
|
||||
KSDATARANGE DataRange;
|
||||
BOOL bFixedSizeSamples;
|
||||
BOOL 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;
|
||||
BOOL bFixedSizeSamples;
|
||||
BOOL bTemporalCompression;
|
||||
DWORD StreamDescriptionFlags;
|
||||
DWORD MemoryAllocationFlags;
|
||||
KS_VIDEO_STREAM_CONFIG_CAPS ConfigCaps;
|
||||
KS_VIDEOINFOHEADER2 VideoInfoHeader;
|
||||
} KS_DATARANGE_VIDEO2, *PKS_DATARANGE_VIDEO2;
|
||||
|
||||
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_DATARANGE_VIDEO_VBI {
|
||||
KSDATARANGE DataRange;
|
||||
BOOL bFixedSizeSamples;
|
||||
BOOL 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_TVTUNER_CHANGE_INFO {
|
||||
DWORD dwFlags;
|
||||
DWORD dwCountryCode;
|
||||
DWORD dwAnalogVideoStandard;
|
||||
DWORD dwChannel;
|
||||
} KS_TVTUNER_CHANGE_INFO, *PKS_TVTUNER_CHANGE_INFO;
|
||||
|
||||
typedef struct {
|
||||
KSPROPERTY Property;
|
||||
ULONG IndexInputPin;
|
||||
ULONG IndexOutputPin;
|
||||
ULONG CanRoute;
|
||||
} KSPROPERTY_CROSSBAR_ROUTE_S, *PKSPROPERTY_CROSSBAR_ROUTE_S;
|
||||
|
||||
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;
|
||||
|
||||
#define KS_SIZE_PREHEADER (FIELD_OFFSET(KS_VIDEOINFOHEADER,bmiHeader))
|
||||
|
||||
#if !defined( DEFINE_WAVEFORMATEX_GUID )
|
||||
#define DEFINE_WAVEFORMATEX_GUID(x) (USHORT)(x), 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue