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

📄 vfw.h

📁 这是一个压缩解压包,用C语言进行编程的,里面有详细的源代码.
💻 H
字号:
#ifndef _INC_VFW#define _INC_VFW#include <mmsystem.h>#ifndef aviTWOCC#define aviTWOCC(C0,C1) ((WORD)(BYTE)(C0)|((WORD)(BYTE)(C1) << 8))#endif#ifndef ICTYPE_VIDEO#define ICTYPE_VIDEO mmioFOURCC('v', 'i', 'd', 'c')#define ICTYPE_AUDIO mmioFOURCC('a', 'u', 'd', 'c')#endif#ifndef ICERR_OK#define ICERR_OK 0L#define ICERR_DONTDRAW 1L#define ICERR_NEWPALETTE 2L#define ICERR_GOTOKEYFRAME 3L#define ICERR_STOPDRAWING 4L#define ICERR_UNSUPPORTED -1L#define ICERR_BADFORMAT -2L#define ICERR_MEMORY -3L#define ICERR_INTERNAL -4L#define ICERR_BADFLAGS -5L#define ICERR_BADPARAM -6L#define ICERR_BADSIZE -7L#define ICERR_BADHANDLE -8L#define ICERR_CANTUPDATE -9L#define ICERR_ABORT -10L#define ICERR_ERROR -100L#define ICERR_BADBITDEPTH -200L#define ICERR_BADIMAGESIZE -201L#define ICERR_CUSTOM -400L#endif#ifndef ICMODE_COMPRESS#define ICMODE_COMPRESS 1#define ICMODE_DECOMPRESS 2#define ICMODE_FASTDECOMPRESS 3#define ICMODE_QUERY 4#define ICMODE_FASTCOMPRESS 5#define ICMODE_DRAW 8#endif#define AVIIF_LIST 0x00000001L#define AVIIF_TWOCC 0x00000002L#define AVIIF_KEYFRAME 0x00000010L#define ICCOMPRESS_KEYFRAME 0x00000001Ltypedef struct {	DWORD dwFlags;	LPBITMAPINFOHEADER lpbiOutput;	LPVOID lpOutput;	LPBITMAPINFOHEADER lpbiInput;	LPVOID lpInput;	LPDWORD lpckid;	LPDWORD lpdwFlags;	LONG lFrameNum;	DWORD dwFrameSize;	DWORD dwQuality;	LPBITMAPINFOHEADER lpbiPrev;	LPVOID lpPrev;} ICCOMPRESS;#define ICCOMPRESSFRAMES_PADDING 0x00000001typedef struct {	DWORD dwFlags;	LPBITMAPINFOHEADER lpbiOutput;	LPARAM lOutput;	LPBITMAPINFOHEADER lpbiInput;	LPARAM lInput;	LONG lStartFrame;	LONG lFrameCount;	LONG lQuality;	LONG lDataRate;	LONG lKeyRate;	DWORD dwRate;	DWORD dwScale;	DWORD dwOverheadPerFrame;	DWORD dwReserved2;	LONG (CALLBACK *GetData)(LPARAM,LONG,LPVOID,LONG);	LONG (CALLBACK *PutData)(LPARAM,LONG,LPVOID,LONG);} ICCOMPRESSFRAMES;#define ICDECOMPRESS_HURRYUP 0x80000000L#define ICDECOMPRESS_UPDATE 0x40000000L#define ICDECOMPRESS_PREROLL 0x20000000L#define ICDECOMPRESS_NULLFRAME 0x10000000L#define ICDECOMPRESS_NOTKEYFRAME 0x08000000Ltypedef struct {	DWORD dwFlags;	LPBITMAPINFOHEADER lpbiInput;	LPVOID lpInput;	LPBITMAPINFOHEADER lpbiOutput;	LPVOID lpOutput;	DWORD ckid;} ICDECOMPRESS;typedef struct {	DWORD dwSize;	DWORD fccType;	DWORD fccHandler;	DWORD dwVersion;	DWORD dwFlags;	LRESULT dwError;	LPVOID pV1Reserved;	LPVOID pV2Reserved;	DWORD dnDevNode;} ICOPEN;#define ICM_USER (DRV_USER+0x0000)#define ICM_RESERVED ICM_RESERVED_LOW#define ICM_RESERVED_LOW (DRV_USER+0x1000)#define ICM_RESERVED_HIGH (DRV_USER+0x2000)#define ICM_GETSTATE (ICM_RESERVED+0)#define ICM_SETSTATE (ICM_RESERVED+1)#define ICM_GETINFO (ICM_RESERVED+2)#define ICM_CONFIGURE (ICM_RESERVED+10)#define ICM_ABOUT (ICM_RESERVED+11)#define ICM_GETERRORTEXT (ICM_RESERVED+12)#define ICM_GETFORMATNAME (ICM_RESERVED+20)#define ICM_ENUMFORMATS (ICM_RESERVED+21)#define ICM_GETDEFAULTQUALITY (ICM_RESERVED+30)#define ICM_GETQUALITY (ICM_RESERVED+31)#define ICM_SETQUALITY (ICM_RESERVED+32)#define ICM_SET (ICM_RESERVED+40)#define ICM_GET (ICM_RESERVED+41)#define ICM_FRAMERATE mmioFOURCC('F','r','m','R')#define ICM_KEYFRAMERATE mmioFOURCC('K','e','y','R')typedef struct {	DWORD dwSize;	DWORD fccType;	DWORD fccHandler;	DWORD dwFlags;	DWORD dwVersion;	DWORD dwVersionICM;	WCHAR szName[16];	WCHAR szDescription[128];	WCHAR szDriver[128];} ICINFO;#define VIDCF_QUALITY 0x0001#define VIDCF_CRUNCH 0x0002#define VIDCF_TEMPORAL 0x0004#define VIDCF_COMPRESSFRAMES 0x0008#define VIDCF_DRAW 0x0010#define VIDCF_FASTTEMPORALC 0x0020#define VIDCF_FASTTEMPORALD 0x0080#define VIDCF_QUALITYTIME 0x0040#define VIDCF_FASTTEMPORAL (VIDCF_FASTTEMPORALC|VIDCF_FASTTEMPORALD)#define ICVERSION 0x0104#define ICM_COMPRESS_GET_FORMAT (ICM_USER+4)#define ICM_COMPRESS_GET_SIZE (ICM_USER+5)#define ICM_COMPRESS_QUERY (ICM_USER+6)#define ICM_COMPRESS_BEGIN (ICM_USER+7)#define ICM_COMPRESS (ICM_USER+8)#define ICM_COMPRESS_END (ICM_USER+9)#define ICM_DECOMPRESS_GET_FORMAT (ICM_USER+10)#define ICM_DECOMPRESS_QUERY (ICM_USER+11)#define ICM_DECOMPRESS_BEGIN (ICM_USER+12)#define ICM_DECOMPRESS (ICM_USER+13)#define ICM_DECOMPRESS_END (ICM_USER+14)#define ICM_DECOMPRESS_SET_PALETTE (ICM_USER+29)#define ICM_DECOMPRESS_GET_PALETTE (ICM_USER+30)#define ICM_DRAW_QUERY (ICM_USER+31)#define ICM_DRAW_BEGIN (ICM_USER+15)#define ICM_DRAW_GET_PALETTE (ICM_USER+16)#define ICM_DRAW_UPDATE (ICM_USER+17)#define ICM_DRAW_START (ICM_USER+18)#define ICM_DRAW_STOP (ICM_USER+19)#define ICM_DRAW_BITS (ICM_USER+20)#define ICM_DRAW_END (ICM_USER+21)#define ICM_DRAW_GETTIME (ICM_USER+32)#define ICM_DRAW (ICM_USER+33)#define ICM_DRAW_WINDOW (ICM_USER+34)#define ICM_DRAW_SETTIME (ICM_USER+35)#define ICM_DRAW_REALIZE (ICM_USER+36)#define ICM_DRAW_FLUSH (ICM_USER+37)#define ICM_DRAW_RENDERBUFFER (ICM_USER+38)#define ICM_DRAW_START_PLAY (ICM_USER+39)#define ICM_DRAW_STOP_PLAY (ICM_USER+40)#define ICM_DRAW_SUGGESTFORMAT (ICM_USER+50)#define ICM_DRAW_CHANGEPALETTE (ICM_USER+51)#define ICM_DRAW_IDLE (ICM_USER+52)#define ICM_GETBUFFERSWANTED (ICM_USER+41)#define ICM_GETDEFAULTKEYFRAMERATE (ICM_USER+42)#define ICM_DECOMPRESSEX_BEGIN (ICM_USER+60)#define ICM_DECOMPRESSEX_QUERY (ICM_USER+61)#define ICM_DECOMPRESSEX (ICM_USER+62)#define ICM_DECOMPRESSEX_END (ICM_USER+63)#define ICM_COMPRESS_FRAMES_INFO (ICM_USER+70)#define ICM_COMPRESS_FRAMES (ICM_USER+71)#define ICM_SET_STATUS_PROC (ICM_USER+72)#endif /* _INC_VFW */

⌨️ 快捷键说明

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