⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 strmif.h

📁 MinGW+MSYS开发必用的api参考
💻 H
📖 第 1 页 / 共 3 页
字号:
	BYTE bVersion;	BOOL fMasterOfCeremoniesInGuideVocal1;	BOOL fDuet;	DVD_KARAOKE_ASSIGNMENT ChannelAssignment;	WORD wChannelContents[8];} DVD_KaraokeAttributes;typedef struct tagDVD_MUA_Coeff {	double log2_alpha;	double log2_beta;} DVD_MUA_Coeff;typedef struct tagDVD_MUA_MixingInfo {	BOOL fMixTo0;	BOOL fMixTo1;	BOOL fMix0InPhase;	BOOL fMix1InPhase;	DWORD dwSpeakerPosition;} DVD_MUA_MixingInfo;#define KSAUDIO_SPEAKER_LEFT 0x00000001#define KSAUDIO_SPEAKER_RIGHT 0x00000002#define KSAUDIO_SPEAKER_CENTER 0x00000004#define KSAUDIO_SPEAKER_SURROUND_LEFT 0x00000008#define KSAUDIO_SPEAKER_SURROUND_RIGHT 0x00000010#define KSAUDIO_SPEAKER_SUBWOOFER 0x00000020#define KSAUDIO_SPEAKER_LEFT_OF_CENTER 0x00000040#define KSAUDIO_SPEAKER_RIGHT_OF_CENTER 0x00000080#define KSAUDIO_SPEAKER_SURROUND_MONO 0x00000100#define KSAUDIO_SPEAKER_SIDE_LEFT 0x00000200#define KSAUDIO_SPEAKER_SIDE_RIGHT 0x00000400#define KSAUDIO_SPEAKER_TOP 0x00000800typedef struct tagDVD_MultichannelAudioAttributes {	DVD_MUA_MixingInfo Info[8];	DVD_MUA_Coeff Coeff[8];} DVD_MultichannelAudioAttributes;typedef struct tagDVD_PLAYBACK_LOCATION {	ULONG TitleNum;	ULONG ChapterNum; 	ULONG TimeCode;} DVD_PLAYBACK_LOCATION;typedef struct tagDVD_PLAYBACK_LOCATION2 {	ULONG TitleNum;	ULONG ChapterNum;	DVD_HMSF_TIMECODE TimeCode;	ULONG TimeCodeFlags;} DVD_PLAYBACK_LOCATION2;typedef struct tagDVD_SubpictureAttributes {	DVD_SUBPICTURE_TYPE Type;	DVD_SUBPICTURE_CODING CodingMode;	LCID Language;	DVD_SUBPICTURE_LANG_EXT LanguageExtension;} DVD_SubpictureAttributes;typedef struct tagDVD_TIMECODE {	ULONG Hours1:4; 	ULONG Hours10:4; 	ULONG Minutes1:4; 	ULONG Minutes10:4; 	ULONG Seconds1:4; 	ULONG Seconds10:4; 	ULONG Frames1:4; 	ULONG Frames10:2; 	ULONG FrameRateCode:2; } DVD_TIMECODE;typedef struct tagDVD_VideoAttributes {	BOOL fPanscanPermitted;	BOOL fLetterboxPermitted;	ULONG ulAspectX;	ULONG ulAspectY;	ULONG ulFrameRate;	ULONG ulFrameHeight;	DVD_VIDEO_COMPRESSION Compression;	BOOL fLine21Field1InGOP;	BOOL fLine21Field2InGOP;	ULONG ulSourceResolutionX;	ULONG ulSourceResolutionY;	BOOL fIsSourceLetterboxed;	BOOL fIsFilmMode;} DVD_VideoAttributes;struct tagDVD_MenuAttributes {	BOOL fCompatibleRegion[8];	DVD_VideoAttributes VideoAttributes;	BOOL fAudioPresent;	DVD_AudioAttributes AudioAttributes;	BOOL fSubpicturePresent;	DVD_SubpictureAttributes SubpictureAttributes;} DVD_MenuAttributes;typedef struct tagDVD_TitleMainAttributes {	DVD_TITLE_APPMODE AppMode;	DVD_VideoAttributes VideoAttributes;	ULONG ulNumberOfAudioStreams;	DVD_AudioAttributes AudioAttributes[8];	DVD_MultichannelAudioAttributes MultichannelAudioAttributes[8];	ULONG ulNumberOfSubpictureStreams;	DVD_SubpictureAttributes SubpictureAttributes[32];} DVD_TitleAttributes;typedef struct tag_DVINFO {	DWORD dwDVAAuxSrc;	DWORD dwDVAAuxCtl;	DWORD dwDVAAuxSrc1;	DWORD dwDVAAuxCtl1;	DWORD dwDVVAuxSrc;	DWORD dwDVVAuxCtl;	DWORD dwDVReserved[2];} DVINFO,*PDVINFO;/***************#define MAX_FILTER_NAME 128typedef struct _FilterInfo {	WCHAR achName[MAX_FILTER_NAME]; 	IFilterGraph *pGraph;} FILTER_INFO;***************/typedef struct _NORMALIZEDRECT {	float left;	float top;	float right;	float bottom;} NORMALIZEDRECT,*PNORMALIZEDRECT;#define MAX_PIN_NAME 128typedef struct _PinInfo {	IBaseFilter *pFilter;	PIN_DIRECTION dir;	WCHAR achName[MAX_PIN_NAME];} PIN_INFO;typedef struct{ 	QualityMessageType Type;	long Proportion;	REFERENCE_TIME Late;	REFERENCE_TIME TimeStamp;} Quality;typedef struct {	CLSID clsMedium;	DWORD dw1;	DWORD dw2;} REGPINMEDIUM;typedef struct {	DWORD dwFlags;	UINT cInstances;	UINT nMediaTypes; 	const REGPINTYPES *lpMediaType;	UINT nMediums;	const REGPINMEDIUM *lpMedium;	const CLSID *clsPinCategory;} REGFILTERPINS2;typedef struct {	DWORD dwVersion;	DWORD dwMerit;	union {		struct {			ULONG cPins;			const REGFILTERPINS *rgPins;		};		struct {			ULONG cPins2;			const REGFILTERPINS2 *rgPins2;		};	};} REGFILTER2;typedef struct {	ULONG stream_id;	DWORD dwMediaSampleContent;	ULONG ulSubstreamFilterValue;	int iDataOffset;} STREAM_ID_MAP;#define MPEG2_PROGRAM_STREAM_MAP 0x00000000#define MPEG2_PROGRAM_ELEMENTARY_STREAM 0x00000001#define MPEG2_PROGRAM_DIRECTORY_PES_PACKET 0x00000002#define MPEG2_PROGRAM_PACK_HEADER 0x00000003#define MPEG2_PROGRAM_PES_STREAM 0x00000004#define MPEG2_PROGRAM_SYSTEM_HEADER 0x00000005#define SUBSTREAM_FILTER_VAL_NONE 0x10000000typedef struct tagTIMECODE {	WORD wFrameRate;	WORD wFrameFract;	DWORD dwFrames;} TIMECODE;#define ED_FORMAT_SMPTE_30 0x00001196#define ED_FORMAT_SMPTE_30DROP 0x00001197#define ED_FORMAT_SMPTE_25 0x00001198#define ED_FORMAT_SMPTE_24 0x00001199typedef struct tagTIMECODE_SAMPLE {	LONGLONG qwTick;	TIMECODE timecode;	DWORD dwUser;	DWORD dwFlags;} TIMECODE_SAMPLE;/*#define AM_TIMECODE_FLAG_FCM *//*#define AM_TIMECODE_FLAG_CF *//*#define AM_TIMECODE_FLAG_FIELD *//*#define AM_TIMECODE_FLAG_DF *//*#define AM_TIMECODE_COLORFRAME *//*#define AM_TIMECODE_COLORSEQUENCE *//*#define AM_TIMECODE_FILMSEQUENCE_TYPE */typedef struct _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;} VIDEO_STREAM_CONFIG_CAPS;typedef struct tagVMRALLOCATIONINFO {	DWORD dwFlags;	LPBITMAPINFOHEADER lpHdr;	LPDDPIXELFORMAT lpPixFmt;	SIZE szAspectRatio;	DWORD dwMinBuffers;	DWORD dwMaxBuffers;	DWORD dwInterlaceFlags;	SIZE szNativeSize;} VMRALLOCATIONINFO;/**********typedef struct _VMRALPHABITMAP {	DWORD dwFlags;	HDC hdc;	LPDIRECTDRAWSURFACE7 pDDS;	RECT rSrc;	NORMALIZEDRECT rDest;	FLOAT fAlpha;	COLORREF clrSrcKey;} VMRALPHABITMAP,*PVMRALPHABITMAP;**********/#define VMRBITMAP_DISABLE 0x00000001#define VMRBITMAP_HDC 0x00000002#define VMRBITMAP_ENTIREDDS 0x00000004#define VMRBITMAP_SRCCOLORKEY 0x00000008#define VMRBITMAP_SRCRECT 0x00000010typedef struct _VMRDeinterlaceCaps {	DWORD dwSize;	DWORD dwNumPreviousOutputFrames;	DWORD dwNumForwardRefSamples;	DWORD dwNumBackwardRefSamples;	VMRDeinterlaceTech DeinterlaceTechnology;} VMRDeinterlaceCaps;typedef struct _VMRFrequency {	DWORD dwNumerator;	DWORD dwDenominator;} VMRFrequency;typedef struct tagVMRGUID {	GUID *pGUID;	GUID GUID;} VMRGUID;typedef struct tagVMRMONITORINFO {	VMRGUID guid;	RECT rcMonitor;	HMONITOR hMon;	DWORD dwFlags;	wchar_t szDevice[32];	wchar_t szDescription[256];} VMRMONITORINFO;/**********typedef struct tagVMRPRESENTATIONINFO {	DWORD dwFlags;	LPDIRECTDRAWSURFACE7 lpSurf;	REFERENCE_TIME rtStart;	REFERENCE_TIME rtEnd;	SIZE szAspectRatio;	RECT rcSrc;	RECT rcDst;	DWORD dwTypeSpecificFlags;	DWORD dwInterlaceFlags;} VMRPRESENTATIONINFO;**********/typedef struct _VMRVideoDesc {	DWORD dwSize;	DWORD dwSampleWidth;	DWORD dwSampleHeight;	BOOL SingleFieldPerSample;	DWORD dwFourCC;	VMRFrequency InputSampleFreq;	VMRFrequency OutputFrameFreq;} VMRVideoDesc;/**********typedef struct _VMRVIDEOSTREAMINFO {	LPDIRECTDRAWSURFACE7 pddsVideoSurface;	DWORD dwWidth;	DWORD dwHeight;	DWORD dwStrmID;	FLOAT fAlpha;	DDCOLORKEY ddClrKey;	NORMALIZEDRECT rNormal;} VMRVIDEOSTREAMINFO;**********//*--- DirectShow Reference - Interfaces */#define INTERFACE IAMAnalogVideoDecoderDECLARE_INTERFACE_(IAMAnalogVideoDecoder, IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD_(HRESULT,get_AvailableTVFormats)(THIS_ long*) PURE;	STDMETHOD_(HRESULT,get_HorizontalLocked)(THIS_ long*) PURE;	STDMETHOD_(HRESULT,get_NumberOfLines)(THIS_ long*) PURE;	STDMETHOD_(HRESULT,get_OutputEnable)(THIS_ long*) PURE;	STDMETHOD_(HRESULT,get_TVFormat)(THIS_ long*) PURE;	STDMETHOD_(HRESULT,get_VCRHorizontalLocking)(THIS_ long*) PURE;	STDMETHOD_(HRESULT,put_OutputEnable)(THIS_ long) PURE;	STDMETHOD_(HRESULT,put_TVFormat)(THIS_ long) PURE;	STDMETHOD_(HRESULT,put_VCRHorizontalLocking)(THIS_ long) PURE;};#undef INTERFACE#define INTERFACE IAMAudioInputMixerDECLARE_INTERFACE_(IAMAudioInputMixer, IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD_(HRESULT,get_Bass)(THIS_ double*) PURE;	STDMETHOD_(HRESULT,get_BassRange)(THIS_ double*) PURE;	STDMETHOD_(HRESULT,get_Enable)(THIS_ BOOL*) PURE;	STDMETHOD_(HRESULT,get_Loudness)(THIS_ BOOL*) PURE;	STDMETHOD_(HRESULT,get_MixLevel)(THIS_ double*) PURE;	STDMETHOD_(HRESULT,get_Mono)(THIS_ BOOL*) PURE;	STDMETHOD_(HRESULT,get_Pan)(THIS_ double*) PURE;	STDMETHOD_(HRESULT,get_Treble)(THIS_ double*) PURE;	STDMETHOD_(HRESULT,get_TrebleRange)(THIS_ double*) PURE;	STDMETHOD_(HRESULT,put_Bass)(THIS_ double) PURE;	STDMETHOD_(HRESULT,put_Enable)(THIS_ BOOL) PURE;	STDMETHOD_(HRESULT,put_Loudness)(THIS_ BOOL) PURE;	STDMETHOD_(HRESULT,put_MixLevel)(THIS_ double) PURE;	STDMETHOD_(HRESULT,put_Mono)(THIS_ BOOL) PURE;	STDMETHOD_(HRESULT,put_Pan)(THIS_ double) PURE;	STDMETHOD_(HRESULT,put_Treble)(THIS_ double) PURE;};#undef INTERFACE#define INTERFACE IAMAudioRendererStatsDECLARE_INTERFACE_(IAMAudioRendererStats, IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD_(HRESULT,GetStatParam)(THIS_ DWORD,DWORD*,DWORD*) PURE;};#undef INTERFACE#define INTERFACE IAMBufferNegotiationDECLARE_INTERFACE_(IAMBufferNegotiation, IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD_(HRESULT,GetAllocatorProperties)(THIS_ ALLOCATOR_PROPERTIES*) PURE;	STDMETHOD_(HRESULT,SuggestAllocatorProperties)(THIS_ const ALLOCATOR_PROPERTIES*) PURE;};#undef INTERFACE#define INTERFACE IAMCameraControlDECLARE_INTERFACE_(IAMCameraControl, IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD_(HRESULT,Get)(THIS_ long,long*,long*) PURE;	STDMETHOD_(HRESULT,GetRange)(THIS_ long,long*,long*,long*,long*,long*) PURE;	STDMETHOD_(HRESULT,Set)(THIS_ long,long,long) PURE;};#undef INTERFACE#define INTERFACE IAMCertifiedOutputProtectionDECLARE_INTERFACE_(IAMCertifiedOutputProtection, IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD_(HRESULT,KeyExchange)(THIS_ GUID*,BYTE**,DWORD*) PURE;	STDMETHOD_(HRESULT,ProtectionCommand)(THIS_ const AMCOPPCommand*) PURE;	STDMETHOD_(HRESULT,ProtectionStatus)(THIS_ const AMCOPPStatusInput*,AMCOPPStatusOutput*) PURE;	STDMETHOD_(HRESULT,SessionSequenceStart)(THIS_ const AMCOPPSignature*) PURE;};#undef INTERFACE#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

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