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

📄 vfw.h

📁 wince下的xvidcore开发库,可用于MP4等视频播放开发
💻 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 0x00000001L
 
 typedef 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 0x00000001
 
 typedef 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 0x08000000L
 
 typedef 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 + -