strmif.h

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 1,160 行 · 第 1/3 页

H
1,160
字号
typedef enum _DVRESOLUTION {
	DVRESOLUTION_FULL = 1000,
	DVRESOLUTION_HALF = 1001,
	DVRESOLUTION_QUARTER = 1002,
	DVRESOLUTION_DC = 1003
} DVRESOLUTION;
typedef enum _DVENCODERFORMAT {
	DVENCODERFORMAT_DVSD = 2007,
	DVENCODERFORMAT_DVHD = 2008,
	DVENCODERFORMAT_DVSL = 2009
} DVENCODERFORMAT;
typedef enum _DVENCODERRESOLUTION {
	DVENCODERRESOLUTION_720x480 = 2012,
	DVENCODERRESOLUTION_360x240 = 2013,
	DVENCODERRESOLUTION_180x120 = 2014,
	DVENCODERRESOLUTION_88x60 = 2015
} DVENCODERRESOLUTION;
typedef enum _DVENCODERVIDEOFORMAT {
	DVENCODERVIDEOFORMAT_NTSC = 2000,
	DVENCODERVIDEOFORMAT_PAL = 2001
} DVENCODERVIDEOFORMAT;
typedef enum _FilterState {
	State_Stopped,
	State_Paused,
	State_Running
} FILTER_STATE;
typedef enum {
	INTERLEAVE_NONE,
	INTERLEAVE_CAPTURE,
	INTERLEAVE_FULL,
	INTERLEAVE_NONE_BUFFERED
} InterleavingMode;
typedef enum {
	PhysConn_Video_Tuner = 1,
	PhysConn_Video_Composite,
	PhysConn_Video_SVideo,
	PhysConn_Video_RGB,
	PhysConn_Video_YRYBY,
	PhysConn_Video_SerialDigital,
	PhysConn_Video_ParallelDigital,
	PhysConn_Video_SCSI,
	PhysConn_Video_AUX,
	PhysConn_Video_1394,
	PhysConn_Video_USB,
	PhysConn_Video_VideoDecoder,
	PhysConn_Video_VideoEncoder,
	PhysConn_Video_SCART,
	PhysConn_Video_Black,
	PhysConn_Audio_Tuner = 4096,
	PhysConn_Audio_Line,
	PhysConn_Audio_Mic,
	PhysConn_Audio_AESDigital,
	PhysConn_Audio_SPDIFDigital,
	PhysConn_Audio_SCSI,
	PhysConn_Audio_AUX,
	PhysConn_Audio_1394,
	PhysConn_Audio_USB,
	PhysConn_Audio_AudioDecoder
} PhysicalConnectorType;
typedef enum _PinDirection {
	PINDIR_INPUT,
	PINDIR_OUTPUT
} PIN_DIRECTION;
typedef enum {
	Famine,
	Flood
} QualityMessageType;
enum {
	REG_PINFLAG_B_ZERO = 0x1,
	REG_PINFLAG_B_RENDERER = 0x2,
	REG_PINFLAG_B_MANY = 0x4,
	REG_PINFLAG_B_OUTPUT = 0x8
} REG_PINFLAG;
typedef enum _REM_FILTER_FLAGS {
	REMFILTERF_LEAVECONNECTED = 0x00000001
} REM_FILTER_FLAGS;
typedef enum {
	TunerInputCable,
	TunerInputAntenna
} TunerInputType;
typedef enum tagTVAudioMode {
	AMTVAUDIO_MODE_MONO = 0x0001,
	AMTVAUDIO_MODE_STEREO = 0x0002,
	AMTVAUDIO_MODE_LANG_A = 0x0010,
	AMTVAUDIO_MODE_LANG_B = 0x0020,
	AMTVAUDIO_MODE_LANG_C = 0x0040,
	AMTVAUDIO_PRESET_STEREO = 0x0200,
	AMTVAUDIO_PRESET_LANG_A = 0x1000,
	AMTVAUDIO_PRESET_LANG_B = 0x2000,
	AMTVAUDIO_PRESET_LANG_C = 0x4000
} TVAudioMode;
typedef enum {
	UOP_FLAG_Play_Title_Or_AtTime = 0x00000001,
	UOP_FLAG_Play_Chapter = 0x00000002,
	UOP_FLAG_Play_Title = 0x00000004,
	UOP_FLAG_Stop = 0x00000008,
	UOP_FLAG_ReturnFromSubMenu = 0x00000010,
	UOP_FLAG_Play_Chapter_Or_AtTime = 0x00000020,
	UOP_FLAG_PlayPrev_Or_Replay_Chapter = 0x00000040,
	UOP_FLAG_PlayNext_Chapter = 0x00000080,
	UOP_FLAG_Play_Forwards = 0x00000100,
	UOP_FLAG_Play_Backwards = 0x00000200,
	UOP_FLAG_ShowMenu_Title = 0x00000400,
	UOP_FLAG_ShowMenu_Root = 0x00000800,
	UOP_FLAG_ShowMenu_SubPic = 0x00001000,
	UOP_FLAG_ShowMenu_Audio = 0x00002000,
	UOP_FLAG_ShowMenu_Angle = 0x00004000,
	UOP_FLAG_ShowMenu_Chapter = 0x00008000,
	UOP_FLAG_Resume = 0x00010000,
	UOP_FLAG_Select_Or_Activate_Button = 0x00020000,
	UOP_FLAG_Still_Off = 0x00040000,
	UOP_FLAG_Pause_On = 0x00080000,
	UOP_FLAG_Select_Audio_Stream = 0x00100000,
	UOP_FLAG_Select_SubPic_Stream = 0x00200000,
	UOP_FLAG_Select_Angle = 0x00400000,
	UOP_FLAG_Select_Karaoke_Audio_Presentation_Mode = 0x00800000,
	UOP_FLAG_Select_Video_Mode_Preference = 0x01000000
} VALID_UOP_FLAG;
typedef enum {
	VfwCaptureDialog_Source = 0x01,
	VfwCaptureDialog_Format = 0x02,
	VfwCaptureDialog_Display = 0x04
} VfwCaptureDialogs;
typedef enum {
	VfwCompressDialog_Config = 0x01,
	VfwCompressDialog_About = 0x02,
	VfwCompressDialog_QueryConfig = 0x04,
	VfwCompressDialog_QueryAbout = 0x08
} VfwCompressDialogs;
typedef enum tagVideoControlFlags {
	VideoControlFlag_FlipHorizontal = 0x0001,
	VideoControlFlag_FlipVertical = 0x0002,
	VideoControlFlag_ExternalTriggerEnable = 0x0004,
	VideoControlFlag_Trigger = 0x0008
} VideoControlFlags;
typedef enum {
	ConstantBitRate = 0,
	VariableBitRateAverage,
	VariableBitRatePeak
} VIDEOENCODER_BITRATE_MODE;
typedef enum tagVideoProcAmpFlags {
	VideoProcAmp_Flags_Auto = 0x0001,
	VideoProcAmp_Flags_Manual = 0x0002
} VideoProcAmpFlags;
typedef enum tagVideoProcAmpProperty {
	VideoProcAmp_Brightness,
	VideoProcAmp_Contrast,
	VideoProcAmp_Hue,
	VideoProcAmp_Saturation,
	VideoProcAmp_Sharpness,
	VideoProcAmp_Gamma,
	VideoProcAmp_ColorEnable,
	VideoProcAmp_WhiteBalance,
	VideoProcAmp_BacklightCompensation,
	VideoProcAmp_Gain
} VideoProcAmpProperty;
enum VMR_ASPECT_RATIO_MODE {
	VMR_ARMODE_NONE,
	VMR_ARMODE_LETTER_BOX
};
typedef enum {
	DeinterlacePref_NextBest = 0x01,
	DeinterlacePref_BOB = 0x02,
	DeinterlacePref_Weave = 0x04,
	DeinterlacePref_Mask = 0x07
} VMRDeinterlacePrefs;
typedef enum {
	DeinterlaceTech_Unknown = 0x0000,
	DeinterlaceTech_BOBLineReplicate = 0x0001,
	DeinterlaceTech_BOBVerticalStretch = 0x0002,
	DeinterlaceTech_MedianFiltering = 0x0004,
	DeinterlaceTech_EdgeFiltering = 0x0010,
	DeinterlaceTech_FieldAdaptive = 0x0020,
	DeinterlaceTech_PixelAdaptive = 0x0040,
	DeinterlaceTech_MotionVectorSteered = 0x0080
} VMRDeinterlaceTech;
typedef enum {
	MixerPref_NoDecimation = 0x00000001,
	MixerPref_DecimateOutput = 0x00000002,
	MixerPref_ARAdjustXorY = 0x00000004,
	MixerPref_DecimationReserved = 0x00000008,
	MixerPref_DecimateMask = 0x0000000F,
	MixerPref_BiLinearFiltering = 0x00000010,
	MixerPref_PointFiltering = 0x00000020,
	MixerPref_FilteringMask = 0x000000F0,
	MixerPref_RenderTargetRGB = 0x00000100,
	MixerPref_RenderTargetYUV = 0x00001000,
	MixerPref_RenderTargetYUV420 = 0x00000200,
	MixerPref_RenderTargetYUV422 = 0x00000400,
	MixerPref_RenderTargetYUV444 = 0x00000800,
	MixerPref_RenderTargetReserved = 0x0000E000,
	MixerPref_RenderTargetMask = 0x0000FF00,
	MixerPref_DynamicSwitchToBOB = 0x00010000,
	MixerPref_DynamicDecimateBy2 = 0x00020000,
	MixerPref_DynamicReserved = 0x000C0000,
	MixerPref_DynamicMask = 0x000F0000
} VMRMixerPrefs;
enum VMRMode {
	VMRMode_Windowed = 0x00000001,
	VMRMode_Windowless = 0x00000002,
	VMRMode_Renderless = 0x00000004,
	VMRMode_Mask = 0x00000007
};
typedef enum {
	VMRSample_SyncPoint = 0x00000001,
	VMRSample_Preroll = 0x00000002,
	VMRSample_Discontinuity = 0x00000004,
	VMRSample_TimeValid = 0x00000008
} VMRPresentationFlags;
typedef enum {
	RenderPrefs_ForceOffscreen = 0x00000001,
	RenderPrefs_ForceOverlays = 0x00000002,
	RenderPrefs_AllowOverlays = 0x00000000,
	RenderPrefs_AllowOffscreen = 0x00000000,
	RenderPrefs_DoNotRenderColorKeyAndBorder = 0x00000008,
	RenderPrefs_RestrictToInitialMonitor = 0x00000010,
	RenderPrefs_PreferAGPMemWhenMixing = 0x00000020,
	RenderPrefs_Mask = 0x0000003f
} VMRRenderPrefs;
typedef enum {
	AMAP_PIXELFORMAT_VALID = 0x01,
	AMAP_3D_TARGET = 0x02,
	AMAP_ALLOW_SYSMEM = 0x04,
	AMAP_FORCE_SYSMEM = 0x08,
	AMAP_DIRECTED_FLIP = 0x10,
	AMAP_DXVA_TARGET = 0x20
} VMRSurfaceAllocationFlags;
/*--- DirectShow Reference - DirectShow Structures */
typedef struct _AllocatorProperties {
	long cBuffers;
	long cbBuffer;
	long cbAlign;
	long cbPrefix;
} ALLOCATOR_PROPERTIES;
typedef struct {
	HRESULT hrVPEStatus;
	BOOL bDvdVolInvalid;
	BOOL bDvdVolUnknown;
	BOOL bNoLine21In;
	BOOL bNoLine21Out;
	int iNumStreams;
	int iNumStreamsFailed;
	DWORD dwFailedStreamsFlag;
} AM_DVD_RENDERSTATUS;
typedef struct _AMCOPPCommand {
	GUID macKDI;
	GUID guidCommandID;
	DWORD dwSequence;
	DWORD cbSizeData;
	BYTE CommandData[4056];
} AMCOPPCommand,*LPAMCOPPCommand;
typedef struct _AMCOPPSignature {
	BYTE Signature[256];
} AMCOPPSignature;
typedef struct _AMCOPPStatusInput {
	GUID rApp;
	GUID guidStatusRequestID;
	DWORD dwSequence;
	DWORD cbSizeData;
	BYTE StatusData[4056];
} AMCOPPStatusInput,*LPAMCOPPStatusInput;
typedef struct _AMCOPPStatusOutput {
	GUID macKDI;
	DWORD cbSizeData;
	BYTE COPPStatus[4076];
} AMCOPPStatusOutput,*LPAMCOPPStatusOutput;
typedef struct _AMMediaType {
	GUID majortype;
	GUID subtype;
	BOOL bFixedSizeSamples;
	BOOL bTemporalCompression;
	ULONG lSampleSize;
	GUID formattype;
	IUnknown *pUnk;
	ULONG cbFormat;
	BYTE *pbFormat;
} AM_MEDIA_TYPE;
typedef struct tagAM_SAMPLE2_PROPERTIES {
	DWORD cbData;
	DWORD dwTypeSpecificFlags;
	DWORD dwSampleFlags;
	LONG lActual;
	REFERENCE_TIME tStart;
	REFERENCE_TIME tStop;
	DWORD dwStreamId;
	AM_MEDIA_TYPE *pMediaType;
	BYTE *pbBuffer;
	LONG cbBuffer;
} AM_SAMPLE2_PROPERTIES;
typedef struct {
	REFERENCE_TIME tStart;
	REFERENCE_TIME tStop;
	DWORD dwStartCookie;
	DWORD dwStopCookie;
	DWORD dwFlags;
} AM_STREAM_INFO;
typedef struct {
	const CLSID *clsMajorType;
	const CLSID *clsMinorType;
} REGPINTYPES;
typedef REGPINTYPES AMOVIESETUP_MEDIATYPE,*PAMOVIESETUP_MEDIATYPE,*LPAMOVIESETUP_MEDIATYPE;
typedef struct {
	LPWSTR strName;
	BOOL bRendered;
	BOOL bOutput;
	BOOL bZero;
	BOOL bMany;
	const CLSID *clsConnectsToFilter;
	const WCHAR *strConnectsToPin;
	UINT nMediaTypes;
	const REGPINTYPES *lpMediaType;
} REGFILTERPINS;
typedef REGFILTERPINS AMOVIESETUP_PIN,*PAMOVIESETUP_PIN,*LPAMOVIESETUP_PIN;
typedef struct _AMOVIESETUP_FILTER {
	const CLSID *clsID;
	const WCHAR *strName;
	DWORD dwMerit;
	UINT nPins;
	const AMOVIESETUP_PIN *lpPin;
} AMOVIESETUP_FILTER,*PAMOVIESETUP_FILTER,*LPAMOVIESETUP_FILTER;
typedef struct _AUDIO_STREAM_CONFIG_CAPS {
	GUID guid;
	ULONG MinimumChannels;
	ULONG MaximumChannels;
	ULONG ChannelsGranularity;
	ULONG MinimumBitsPerSample;
	ULONG MaximumBitsPerSample;
	ULONG BitsPerSampleGranularity;
	ULONG MinimumSampleFrequency;
	ULONG MaximumSampleFrequency;
	ULONG SampleFrequencyGranularity;
} AUDIO_STREAM_CONFIG_CAPS;
struct CodecAPIEventData {
	GUID guid;
	DWORD dataLength;
	DWORD reserved[3];
};
typedef struct tagCOLORKEY {
	DWORD KeyType;
	DWORD PaletteIndex;
	COLORREF LowColorValue;
	COLORREF HighColorValue;
} COLORKEY;
#define CK_NOCOLORKEY 0x00000000
#define CK_INDEX 0x00000001
#define CK_RGB 0x00000002
typedef struct {
	DWORD dw1;
	DWORD dw2;
} DDCOLORKEY;
typedef struct tagDVD_AudioAttributes {
	DVD_AUDIO_APPMODE AppMode;
	DVD_AUDIO_FORMAT AudioFormat; 
	LCID Language;
	DVD_AUDIO_LANG_EXT LanguageExtension;
	BOOL fHasMultichannelInfo; 
	DWORD dwFrequency;
	BYTE bQuantization;
	BYTE bNumberOfChannels;
	DWORD dwReserved[2];
} DVD_AudioAttributes;
typedef struct tagDVD_DECODER_CAPS {
	DWORD dwSize;
	DWORD dwAudioCaps;
	double dFwdMaxRateVideo;
	double dFwdMaxRateAudio;
	double dFwdMaxRateSP;
	double dBwdMaxRateVideo; 
	double dBwdMaxRateAudio;
	double dBwdMaxRateSP;
	DWORD dwRes1;
	DWORD dwRes2;
	DWORD dwRes3;
	DWORD dwRes4;
} DVD_DECODER_CAPS;
#define DVD_AUDIO_CAPS_AC3 0x00000001
#define DVD_AUDIO_CAPS_MPEG2 0x00000002
#define DVD_AUDIO_CAPS_LPCM 0x00000004
#define DVD_AUDIO_CAPS_DTS 0x00000008
#define DVD_AUDIO_CAPS_SDDS 0x00000010
typedef struct tagDVD_HMSF_TIMECODE {
	BYTE bHours;
	BYTE bMinutes;
	BYTE bSeconds;
	BYTE bFrames;
} DVD_HMSF_TIMECODE;
typedef struct tagDVD_KaraokeAttributes {

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?