| 1 | /** | 
 
 
 
 
 | 2 | * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 | 3 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 | 5 | */ | 
 
 
 
 
 | 6 | #ifndef _INC_VFW | 
 
 
 
 
 | 7 | #define _INC_VFW | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #include <_mingw_unicode.h> | 
 
 
 
 
 | 10 |  | 
 
 
 
 
 | 11 | #ifdef __cplusplus | 
 
 
 
 
 | 12 | extern "C" { | 
 
 
 
 
 | 13 | #endif | 
 
 
 
 
 | 14 |  | 
 
 
 
 
 | 15 | #define VFWAPI WINAPI | 
 
 
 
 
 | 16 | #define VFWAPIV WINAPIV | 
 
 
 
 
 | 17 | #define VFWAPI_INLINE WINAPI | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 | DWORD WINAPI VideoForWindowsVersion(void); | 
 
 
 
 
 | 20 | LONG WINAPI InitVFW(void); | 
 
 
 
 
 | 21 | LONG WINAPI TermVFW(void); | 
 
 
 
 
 | 22 |  | 
 
 
 
 
 | 23 | #ifdef __cplusplus | 
 
 
 
 
 | 24 | } | 
 
 
 
 
 | 25 | #endif | 
 
 
 
 
 | 26 |  | 
 
 
 
 
 | 27 | #if !defined(_INC_MMSYSTEM) && (!defined(NOVIDEO) || !defined(NOAVICAP)) | 
 
 
 
 
 | 28 | #include <mmsystem.h> | 
 
 
 
 
 | 29 | #endif | 
 
 
 
 
 | 30 |  | 
 
 
 
 
 | 31 | #ifdef __cplusplus | 
 
 
 
 
 | 32 | extern "C" { | 
 
 
 
 
 | 33 | #endif | 
 
 
 
 
 | 34 |  | 
 
 
 
 
 | 35 | #ifndef MKFOURCC | 
 
 
 
 
 | 36 | #define MKFOURCC(ch0,ch1,ch2,ch3) ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24)) | 
 
 
 
 
 | 37 | #endif | 
 
 
 
 
 | 38 |  | 
 
 
 
 
 | 39 | #if !defined(_INC_MMSYSTEM) | 
 
 
 
 
 | 40 | #define mmioFOURCC MKFOURCC | 
 
 
 
 
 | 41 | #endif | 
 
 
 
 
 | 42 |  | 
 
 
 
 
 | 43 | #ifndef NOCOMPMAN | 
 
 
 
 
 | 44 |  | 
 
 
 
 
 | 45 | #define ICVERSION 0x0104 | 
 
 
 
 
 | 46 |  | 
 
 
 
 
 | 47 | DECLARE_HANDLE(HIC); | 
 
 
 
 
 | 48 |  | 
 
 
 
 
 | 49 | #define BI_1632 0x32333631 | 
 
 
 
 
 | 50 |  | 
 
 
 
 
 | 51 | #ifndef mmioFOURCC | 
 
 
 
 
 | 52 | #define mmioFOURCC(ch0,ch1,ch2,ch3) ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24)) | 
 
 
 
 
 | 53 | #endif | 
 
 
 
 
 | 54 |  | 
 
 
 
 
 | 55 | #ifndef aviTWOCC | 
 
 
 
 
 | 56 | #define aviTWOCC(ch0,ch1) ((WORD)(BYTE)(ch0) | ((WORD)(BYTE)(ch1) << 8)) | 
 
 
 
 
 | 57 | #endif | 
 
 
 
 
 | 58 |  | 
 
 
 
 
 | 59 | #ifndef ICTYPE_VIDEO | 
 
 
 
 
 | 60 | #define ICTYPE_VIDEO mmioFOURCC('v','i','d','c') | 
 
 
 
 
 | 61 | #define ICTYPE_AUDIO mmioFOURCC('a','u','d','c') | 
 
 
 
 
 | 62 | #endif | 
 
 
 
 
 | 63 |  | 
 
 
 
 
 | 64 | #ifndef ICERR_OK | 
 
 
 
 
 | 65 | #define ICERR_OK __MSABI_LONG(0) | 
 
 
 
 
 | 66 | #define ICERR_DONTDRAW __MSABI_LONG(1) | 
 
 
 
 
 | 67 | #define ICERR_NEWPALETTE __MSABI_LONG(2) | 
 
 
 
 
 | 68 | #define ICERR_GOTOKEYFRAME __MSABI_LONG(3) | 
 
 
 
 
 | 69 | #define ICERR_STOPDRAWING __MSABI_LONG(4) | 
 
 
 
 
 | 70 |  | 
 
 
 
 
 | 71 | #define ICERR_UNSUPPORTED __MSABI_LONG(-1) | 
 
 
 
 
 | 72 | #define ICERR_BADFORMAT __MSABI_LONG(-2) | 
 
 
 
 
 | 73 | #define ICERR_MEMORY __MSABI_LONG(-3) | 
 
 
 
 
 | 74 | #define ICERR_INTERNAL __MSABI_LONG(-4) | 
 
 
 
 
 | 75 | #define ICERR_BADFLAGS __MSABI_LONG(-5) | 
 
 
 
 
 | 76 | #define ICERR_BADPARAM __MSABI_LONG(-6) | 
 
 
 
 
 | 77 | #define ICERR_BADSIZE __MSABI_LONG(-7) | 
 
 
 
 
 | 78 | #define ICERR_BADHANDLE __MSABI_LONG(-8) | 
 
 
 
 
 | 79 | #define ICERR_CANTUPDATE __MSABI_LONG(-9) | 
 
 
 
 
 | 80 | #define ICERR_ABORT __MSABI_LONG(-10) | 
 
 
 
 
 | 81 | #define ICERR_ERROR __MSABI_LONG(-100) | 
 
 
 
 
 | 82 | #define ICERR_BADBITDEPTH __MSABI_LONG(-200) | 
 
 
 
 
 | 83 | #define ICERR_BADIMAGESIZE __MSABI_LONG(-201) | 
 
 
 
 
 | 84 |  | 
 
 
 
 
 | 85 | #define ICERR_CUSTOM __MSABI_LONG(-400) | 
 
 
 
 
 | 86 | #endif | 
 
 
 
 
 | 87 |  | 
 
 
 
 
 | 88 | #ifndef ICMODE_COMPRESS | 
 
 
 
 
 | 89 | #define ICMODE_COMPRESS 1 | 
 
 
 
 
 | 90 | #define ICMODE_DECOMPRESS 2 | 
 
 
 
 
 | 91 | #define ICMODE_FASTDECOMPRESS 3 | 
 
 
 
 
 | 92 | #define ICMODE_QUERY 4 | 
 
 
 
 
 | 93 | #define ICMODE_FASTCOMPRESS 5 | 
 
 
 
 
 | 94 | #define ICMODE_DRAW 8 | 
 
 
 
 
 | 95 | #endif | 
 
 
 
 
 | 96 |  | 
 
 
 
 
 | 97 | #define AVIIF_LIST __MSABI_LONG(0x00000001) | 
 
 
 
 
 | 98 | #define AVIIF_TWOCC __MSABI_LONG(0x00000002) | 
 
 
 
 
 | 99 | #define AVIIF_KEYFRAME __MSABI_LONG(0x00000010) | 
 
 
 
 
 | 100 |  | 
 
 
 
 
 | 101 | #define ICQUALITY_LOW 0 | 
 
 
 
 
 | 102 | #define ICQUALITY_HIGH 10000 | 
 
 
 
 
 | 103 | #define ICQUALITY_DEFAULT -1 | 
 
 
 
 
 | 104 |  | 
 
 
 
 
 | 105 | #define ICM_USER (DRV_USER+0x0000) | 
 
 
 
 
 | 106 |  | 
 
 
 
 
 | 107 | #define ICM_RESERVED ICM_RESERVED_LOW | 
 
 
 
 
 | 108 | #define ICM_RESERVED_LOW (DRV_USER+0x1000) | 
 
 
 
 
 | 109 | #define ICM_RESERVED_HIGH (DRV_USER+0x2000) | 
 
 
 
 
 | 110 |  | 
 
 
 
 
 | 111 | #define ICM_GETSTATE (ICM_RESERVED+0) | 
 
 
 
 
 | 112 | #define ICM_SETSTATE (ICM_RESERVED+1) | 
 
 
 
 
 | 113 | #define ICM_GETINFO (ICM_RESERVED+2) | 
 
 
 
 
 | 114 |  | 
 
 
 
 
 | 115 | #define ICM_CONFIGURE (ICM_RESERVED+10) | 
 
 
 
 
 | 116 | #define ICM_ABOUT (ICM_RESERVED+11) | 
 
 
 
 
 | 117 |  | 
 
 
 
 
 | 118 | #define ICM_GETERRORTEXT (ICM_RESERVED+12) | 
 
 
 
 
 | 119 | #define ICM_GETFORMATNAME (ICM_RESERVED+20) | 
 
 
 
 
 | 120 | #define ICM_ENUMFORMATS (ICM_RESERVED+21) | 
 
 
 
 
 | 121 |  | 
 
 
 
 
 | 122 | #define ICM_GETDEFAULTQUALITY (ICM_RESERVED+30) | 
 
 
 
 
 | 123 | #define ICM_GETQUALITY (ICM_RESERVED+31) | 
 
 
 
 
 | 124 | #define ICM_SETQUALITY (ICM_RESERVED+32) | 
 
 
 
 
 | 125 |  | 
 
 
 
 
 | 126 | #define ICM_SET (ICM_RESERVED+40) | 
 
 
 
 
 | 127 | #define ICM_GET (ICM_RESERVED+41) | 
 
 
 
 
 | 128 |  | 
 
 
 
 
 | 129 | #define ICM_FRAMERATE mmioFOURCC('F','r','m','R') | 
 
 
 
 
 | 130 | #define ICM_KEYFRAMERATE mmioFOURCC('K','e','y','R') | 
 
 
 
 
 | 131 |  | 
 
 
 
 
 | 132 | #define ICM_COMPRESS_GET_FORMAT (ICM_USER+4) | 
 
 
 
 
 | 133 | #define ICM_COMPRESS_GET_SIZE (ICM_USER+5) | 
 
 
 
 
 | 134 | #define ICM_COMPRESS_QUERY (ICM_USER+6) | 
 
 
 
 
 | 135 | #define ICM_COMPRESS_BEGIN (ICM_USER+7) | 
 
 
 
 
 | 136 | #define ICM_COMPRESS (ICM_USER+8) | 
 
 
 
 
 | 137 | #define ICM_COMPRESS_END (ICM_USER+9) | 
 
 
 
 
 | 138 |  | 
 
 
 
 
 | 139 | #define ICM_DECOMPRESS_GET_FORMAT (ICM_USER+10) | 
 
 
 
 
 | 140 | #define ICM_DECOMPRESS_QUERY (ICM_USER+11) | 
 
 
 
 
 | 141 | #define ICM_DECOMPRESS_BEGIN (ICM_USER+12) | 
 
 
 
 
 | 142 | #define ICM_DECOMPRESS (ICM_USER+13) | 
 
 
 
 
 | 143 | #define ICM_DECOMPRESS_END (ICM_USER+14) | 
 
 
 
 
 | 144 | #define ICM_DECOMPRESS_SET_PALETTE (ICM_USER+29) | 
 
 
 
 
 | 145 | #define ICM_DECOMPRESS_GET_PALETTE (ICM_USER+30) | 
 
 
 
 
 | 146 |  | 
 
 
 
 
 | 147 | #define ICM_DRAW_QUERY (ICM_USER+31) | 
 
 
 
 
 | 148 | #define ICM_DRAW_BEGIN (ICM_USER+15) | 
 
 
 
 
 | 149 | #define ICM_DRAW_GET_PALETTE (ICM_USER+16) | 
 
 
 
 
 | 150 | #define ICM_DRAW_UPDATE (ICM_USER+17) | 
 
 
 
 
 | 151 | #define ICM_DRAW_START (ICM_USER+18) | 
 
 
 
 
 | 152 | #define ICM_DRAW_STOP (ICM_USER+19) | 
 
 
 
 
 | 153 | #define ICM_DRAW_BITS (ICM_USER+20) | 
 
 
 
 
 | 154 | #define ICM_DRAW_END (ICM_USER+21) | 
 
 
 
 
 | 155 | #define ICM_DRAW_GETTIME (ICM_USER+32) | 
 
 
 
 
 | 156 | #define ICM_DRAW (ICM_USER+33) | 
 
 
 
 
 | 157 | #define ICM_DRAW_WINDOW (ICM_USER+34) | 
 
 
 
 
 | 158 | #define ICM_DRAW_SETTIME (ICM_USER+35) | 
 
 
 
 
 | 159 | #define ICM_DRAW_REALIZE (ICM_USER+36) | 
 
 
 
 
 | 160 | #define ICM_DRAW_FLUSH (ICM_USER+37) | 
 
 
 
 
 | 161 | #define ICM_DRAW_RENDERBUFFER (ICM_USER+38) | 
 
 
 
 
 | 162 |  | 
 
 
 
 
 | 163 | #define ICM_DRAW_START_PLAY (ICM_USER+39) | 
 
 
 
 
 | 164 | #define ICM_DRAW_STOP_PLAY (ICM_USER+40) | 
 
 
 
 
 | 165 |  | 
 
 
 
 
 | 166 | #define ICM_DRAW_SUGGESTFORMAT (ICM_USER+50) | 
 
 
 
 
 | 167 | #define ICM_DRAW_CHANGEPALETTE (ICM_USER+51) | 
 
 
 
 
 | 168 |  | 
 
 
 
 
 | 169 | #define ICM_DRAW_IDLE (ICM_USER+52) | 
 
 
 
 
 | 170 |  | 
 
 
 
 
 | 171 | #define ICM_GETBUFFERSWANTED (ICM_USER+41) | 
 
 
 
 
 | 172 |  | 
 
 
 
 
 | 173 | #define ICM_GETDEFAULTKEYFRAMERATE (ICM_USER+42) | 
 
 
 
 
 | 174 |  | 
 
 
 
 
 | 175 | #define ICM_DECOMPRESSEX_BEGIN (ICM_USER+60) | 
 
 
 
 
 | 176 | #define ICM_DECOMPRESSEX_QUERY (ICM_USER+61) | 
 
 
 
 
 | 177 | #define ICM_DECOMPRESSEX (ICM_USER+62) | 
 
 
 
 
 | 178 | #define ICM_DECOMPRESSEX_END (ICM_USER+63) | 
 
 
 
 
 | 179 |  | 
 
 
 
 
 | 180 | #define ICM_COMPRESS_FRAMES_INFO (ICM_USER+70) | 
 
 
 
 
 | 181 | #define ICM_COMPRESS_FRAMES (ICM_USER+71) | 
 
 
 
 
 | 182 | #define ICM_SET_STATUS_PROC (ICM_USER+72) | 
 
 
 
 
 | 183 |  | 
 
 
 
 
 | 184 | typedef struct { | 
 
 
 
 
 | 185 | DWORD dwSize; | 
 
 
 
 
 | 186 | DWORD fccType; | 
 
 
 
 
 | 187 | DWORD fccHandler; | 
 
 
 
 
 | 188 | DWORD dwVersion; | 
 
 
 
 
 | 189 | DWORD dwFlags; | 
 
 
 
 
 | 190 | LRESULT dwError; | 
 
 
 
 
 | 191 | LPVOID pV1Reserved; | 
 
 
 
 
 | 192 | LPVOID pV2Reserved; | 
 
 
 
 
 | 193 | DWORD dnDevNode; | 
 
 
 
 
 | 194 | } ICOPEN; | 
 
 
 
 
 | 195 |  | 
 
 
 
 
 | 196 | typedef struct { | 
 
 
 
 
 | 197 | DWORD dwSize; | 
 
 
 
 
 | 198 | DWORD fccType; | 
 
 
 
 
 | 199 | DWORD fccHandler; | 
 
 
 
 
 | 200 | DWORD dwFlags; | 
 
 
 
 
 | 201 | DWORD dwVersion; | 
 
 
 
 
 | 202 | DWORD dwVersionICM; | 
 
 
 
 
 | 203 |  | 
 
 
 
 
 | 204 | WCHAR szName[16]; | 
 
 
 
 
 | 205 | WCHAR szDescription[128]; | 
 
 
 
 
 | 206 | WCHAR szDriver[128]; | 
 
 
 
 
 | 207 | } ICINFO; | 
 
 
 
 
 | 208 |  | 
 
 
 
 
 | 209 | #define VIDCF_QUALITY 0x0001 | 
 
 
 
 
 | 210 | #define VIDCF_CRUNCH 0x0002 | 
 
 
 
 
 | 211 | #define VIDCF_TEMPORAL 0x0004 | 
 
 
 
 
 | 212 | #define VIDCF_COMPRESSFRAMES 0x0008 | 
 
 
 
 
 | 213 | #define VIDCF_DRAW 0x0010 | 
 
 
 
 
 | 214 | #define VIDCF_FASTTEMPORALC 0x0020 | 
 
 
 
 
 | 215 | #define VIDCF_QUALITYTIME   0x0040 | 
 
 
 
 
 | 216 | #define VIDCF_FASTTEMPORALD 0x0080 | 
 
 
 
 
 | 217 | #define VIDCF_FASTTEMPORAL      (VIDCF_FASTTEMPORALC|VIDCF_FASTTEMPORALD) | 
 
 
 
 
 | 218 |  | 
 
 
 
 
 | 219 | #define ICCOMPRESS_KEYFRAME __MSABI_LONG(0x00000001) | 
 
 
 
 
 | 220 |  | 
 
 
 
 
 | 221 | typedef struct { | 
 
 
 
 
 | 222 | DWORD dwFlags; | 
 
 
 
 
 | 223 | LPBITMAPINFOHEADER lpbiOutput; | 
 
 
 
 
 | 224 | LPVOID lpOutput; | 
 
 
 
 
 | 225 |  | 
 
 
 
 
 | 226 | LPBITMAPINFOHEADER lpbiInput; | 
 
 
 
 
 | 227 | LPVOID lpInput; | 
 
 
 
 
 | 228 | LPDWORD lpckid; | 
 
 
 
 
 | 229 | LPDWORD lpdwFlags; | 
 
 
 
 
 | 230 | LONG lFrameNum; | 
 
 
 
 
 | 231 | DWORD dwFrameSize; | 
 
 
 
 
 | 232 | DWORD dwQuality; | 
 
 
 
 
 | 233 | LPBITMAPINFOHEADER lpbiPrev; | 
 
 
 
 
 | 234 | LPVOID lpPrev; | 
 
 
 
 
 | 235 | } ICCOMPRESS; | 
 
 
 
 
 | 236 |  | 
 
 
 
 
 | 237 | #define ICCOMPRESSFRAMES_PADDING 0x00000001 | 
 
 
 
 
 | 238 |  | 
 
 
 
 
 | 239 | typedef struct { | 
 
 
 
 
 | 240 | DWORD dwFlags; | 
 
 
 
 
 | 241 | LPBITMAPINFOHEADER lpbiOutput; | 
 
 
 
 
 | 242 | LPARAM lOutput; | 
 
 
 
 
 | 243 | LPBITMAPINFOHEADER lpbiInput; | 
 
 
 
 
 | 244 | LPARAM lInput; | 
 
 
 
 
 | 245 | LONG lStartFrame; | 
 
 
 
 
 | 246 | LONG lFrameCount; | 
 
 
 
 
 | 247 | LONG lQuality; | 
 
 
 
 
 | 248 | LONG lDataRate; | 
 
 
 
 
 | 249 | LONG lKeyRate; | 
 
 
 
 
 | 250 | DWORD dwRate; | 
 
 
 
 
 | 251 | DWORD dwScale; | 
 
 
 
 
 | 252 | DWORD dwOverheadPerFrame; | 
 
 
 
 
 | 253 | DWORD dwReserved2; | 
 
 
 
 
 | 254 | LONG (CALLBACK *GetData)(LPARAM lInput,LONG lFrame,LPVOID lpBits,LONG len); | 
 
 
 
 
 | 255 | LONG (CALLBACK *PutData)(LPARAM lOutput,LONG lFrame,LPVOID lpBits,LONG len); | 
 
 
 
 
 | 256 | } ICCOMPRESSFRAMES; | 
 
 
 
 
 | 257 |  | 
 
 
 
 
 | 258 | #define ICSTATUS_START 0 | 
 
 
 
 
 | 259 | #define ICSTATUS_STATUS 1 | 
 
 
 
 
 | 260 | #define ICSTATUS_END 2 | 
 
 
 
 
 | 261 | #define ICSTATUS_ERROR 3 | 
 
 
 
 
 | 262 | #define ICSTATUS_YIELD 4 | 
 
 
 
 
 | 263 |  | 
 
 
 
 
 | 264 | typedef struct { | 
 
 
 
 
 | 265 | DWORD dwFlags; | 
 
 
 
 
 | 266 | LPARAM lParam; | 
 
 
 
 
 | 267 | LONG (CALLBACK *Status)(LPARAM lParam,UINT message,LONG l); | 
 
 
 
 
 | 268 | } ICSETSTATUSPROC; | 
 
 
 
 
 | 269 |  | 
 
 
 
 
 | 270 | #define ICDECOMPRESS_HURRYUP __MSABI_LONG(0x80000000) | 
 
 
 
 
 | 271 | #define ICDECOMPRESS_UPDATE __MSABI_LONG(0x40000000) | 
 
 
 
 
 | 272 | #define ICDECOMPRESS_PREROLL __MSABI_LONG(0x20000000) | 
 
 
 
 
 | 273 | #define ICDECOMPRESS_NULLFRAME __MSABI_LONG(0x10000000) | 
 
 
 
 
 | 274 | #define ICDECOMPRESS_NOTKEYFRAME __MSABI_LONG(0x08000000) | 
 
 
 
 
 | 275 |  | 
 
 
 
 
 | 276 | typedef struct { | 
 
 
 
 
 | 277 | DWORD dwFlags; | 
 
 
 
 
 | 278 | LPBITMAPINFOHEADER lpbiInput; | 
 
 
 
 
 | 279 | LPVOID lpInput; | 
 
 
 
 
 | 280 | LPBITMAPINFOHEADER lpbiOutput; | 
 
 
 
 
 | 281 | LPVOID lpOutput; | 
 
 
 
 
 | 282 | DWORD ckid; | 
 
 
 
 
 | 283 | } ICDECOMPRESS; | 
 
 
 
 
 | 284 |  | 
 
 
 
 
 | 285 | typedef struct { | 
 
 
 
 
 | 286 | DWORD dwFlags; | 
 
 
 
 
 | 287 | LPBITMAPINFOHEADER lpbiSrc; | 
 
 
 
 
 | 288 | LPVOID lpSrc; | 
 
 
 
 
 | 289 | LPBITMAPINFOHEADER lpbiDst; | 
 
 
 
 
 | 290 | LPVOID lpDst; | 
 
 
 
 
 | 291 | int xDst; | 
 
 
 
 
 | 292 | int yDst; | 
 
 
 
 
 | 293 | int dxDst; | 
 
 
 
 
 | 294 | int dyDst; | 
 
 
 
 
 | 295 |  | 
 
 
 
 
 | 296 | int xSrc; | 
 
 
 
 
 | 297 | int ySrc; | 
 
 
 
 
 | 298 | int dxSrc; | 
 
 
 
 
 | 299 | int dySrc; | 
 
 
 
 
 | 300 | } ICDECOMPRESSEX; | 
 
 
 
 
 | 301 |  | 
 
 
 
 
 | 302 | #define ICDRAW_QUERY __MSABI_LONG(0x00000001) | 
 
 
 
 
 | 303 | #define ICDRAW_FULLSCREEN __MSABI_LONG(0x00000002) | 
 
 
 
 
 | 304 | #define ICDRAW_HDC __MSABI_LONG(0x00000004) | 
 
 
 
 
 | 305 | #define ICDRAW_ANIMATE __MSABI_LONG(0x00000008) | 
 
 
 
 
 | 306 | #define ICDRAW_CONTINUE __MSABI_LONG(0x00000010) | 
 
 
 
 
 | 307 | #define ICDRAW_MEMORYDC __MSABI_LONG(0x00000020) | 
 
 
 
 
 | 308 | #define ICDRAW_UPDATING __MSABI_LONG(0x00000040) | 
 
 
 
 
 | 309 | #define ICDRAW_RENDER __MSABI_LONG(0x00000080) | 
 
 
 
 
 | 310 | #define ICDRAW_BUFFER __MSABI_LONG(0x00000100) | 
 
 
 
 
 | 311 |  | 
 
 
 
 
 | 312 | typedef struct { | 
 
 
 
 
 | 313 | DWORD dwFlags; | 
 
 
 
 
 | 314 | HPALETTE hpal; | 
 
 
 
 
 | 315 | HWND hwnd; | 
 
 
 
 
 | 316 | HDC hdc; | 
 
 
 
 
 | 317 | int xDst; | 
 
 
 
 
 | 318 | int yDst; | 
 
 
 
 
 | 319 | int dxDst; | 
 
 
 
 
 | 320 | int dyDst; | 
 
 
 
 
 | 321 | LPBITMAPINFOHEADER lpbi; | 
 
 
 
 
 | 322 | int xSrc; | 
 
 
 
 
 | 323 | int ySrc; | 
 
 
 
 
 | 324 | int dxSrc; | 
 
 
 
 
 | 325 | int dySrc; | 
 
 
 
 
 | 326 | DWORD dwRate; | 
 
 
 
 
 | 327 | DWORD dwScale; | 
 
 
 
 
 | 328 | } ICDRAWBEGIN; | 
 
 
 
 
 | 329 |  | 
 
 
 
 
 | 330 | #define ICDRAW_HURRYUP __MSABI_LONG(0x80000000) | 
 
 
 
 
 | 331 | #define ICDRAW_UPDATE __MSABI_LONG(0x40000000) | 
 
 
 
 
 | 332 | #define ICDRAW_PREROLL __MSABI_LONG(0x20000000) | 
 
 
 
 
 | 333 | #define ICDRAW_NULLFRAME __MSABI_LONG(0x10000000) | 
 
 
 
 
 | 334 | #define ICDRAW_NOTKEYFRAME __MSABI_LONG(0x08000000) | 
 
 
 
 
 | 335 |  | 
 
 
 
 
 | 336 | typedef struct { | 
 
 
 
 
 | 337 | DWORD dwFlags; | 
 
 
 
 
 | 338 | LPVOID lpFormat; | 
 
 
 
 
 | 339 | LPVOID lpData; | 
 
 
 
 
 | 340 | DWORD cbData; | 
 
 
 
 
 | 341 | LONG lTime; | 
 
 
 
 
 | 342 | } ICDRAW; | 
 
 
 
 
 | 343 |  | 
 
 
 
 
 | 344 | typedef struct { | 
 
 
 
 
 | 345 | LPBITMAPINFOHEADER lpbiIn; | 
 
 
 
 
 | 346 | LPBITMAPINFOHEADER lpbiSuggest; | 
 
 
 
 
 | 347 | int dxSrc; | 
 
 
 
 
 | 348 | int dySrc; | 
 
 
 
 
 | 349 | int dxDst; | 
 
 
 
 
 | 350 | int dyDst; | 
 
 
 
 
 | 351 | HIC hicDecompressor; | 
 
 
 
 
 | 352 | } ICDRAWSUGGEST; | 
 
 
 
 
 | 353 |  | 
 
 
 
 
 | 354 | typedef struct { | 
 
 
 
 
 | 355 | DWORD dwFlags; | 
 
 
 
 
 | 356 | int iStart; | 
 
 
 
 
 | 357 | int iLen; | 
 
 
 
 
 | 358 | LPPALETTEENTRY lppe; | 
 
 
 
 
 | 359 | } ICPALETTE; | 
 
 
 
 
 | 360 |  | 
 
 
 
 
 | 361 | WINBOOL WINAPI ICInfo(DWORD fccType,DWORD fccHandler,ICINFO *lpicinfo); | 
 
 
 
 
 | 362 | WINBOOL WINAPI ICInstall(DWORD fccType,DWORD fccHandler,LPARAM lParam,LPSTR szDesc,UINT wFlags); | 
 
 
 
 
 | 363 | WINBOOL WINAPI ICRemove(DWORD fccType,DWORD fccHandler,UINT wFlags); | 
 
 
 
 
 | 364 | LRESULT WINAPI ICGetInfo(HIC hic,ICINFO *picinfo,DWORD cb); | 
 
 
 
 
 | 365 | HIC WINAPI ICOpen(DWORD fccType,DWORD fccHandler,UINT wMode); | 
 
 
 
 
 | 366 | HIC WINAPI ICOpenFunction(DWORD fccType,DWORD fccHandler,UINT wMode,FARPROC lpfnHandler); | 
 
 
 
 
 | 367 | LRESULT WINAPI ICClose(HIC hic); | 
 
 
 
 
 | 368 | LRESULT WINAPI ICSendMessage(HIC hic,UINT msg,DWORD_PTR dw1,DWORD_PTR dw2); | 
 
 
 
 
 | 369 |  | 
 
 
 
 
 | 370 | #define ICINSTALL_UNICODE 0x8000 | 
 
 
 
 
 | 371 | #define ICINSTALL_FUNCTION 0x0001 | 
 
 
 
 
 | 372 | #define ICINSTALL_DRIVER 0x0002 | 
 
 
 
 
 | 373 | #define ICINSTALL_HDRV 0x0004 | 
 
 
 
 
 | 374 | #define ICINSTALL_DRIVERW 0x8002 | 
 
 
 
 
 | 375 |  | 
 
 
 
 
 | 376 | #define ICMF_CONFIGURE_QUERY 0x00000001 | 
 
 
 
 
 | 377 | #define ICMF_ABOUT_QUERY 0x00000001 | 
 
 
 
 
 | 378 |  | 
 
 
 
 
 | 379 | #define ICQueryAbout(hic) (ICSendMessage(hic,ICM_ABOUT,(DWORD_PTR) -1,ICMF_ABOUT_QUERY)==ICERR_OK) | 
 
 
 
 
 | 380 | #define ICAbout(hic,hwnd) ICSendMessage(hic,ICM_ABOUT,(DWORD_PTR)(UINT_PTR)(hwnd),(DWORD_PTR)0) | 
 
 
 
 
 | 381 | #define ICQueryConfigure(hic) (ICSendMessage(hic,ICM_CONFIGURE,(DWORD_PTR) -1,ICMF_CONFIGURE_QUERY)==ICERR_OK) | 
 
 
 
 
 | 382 | #define ICConfigure(hic,hwnd) ICSendMessage(hic,ICM_CONFIGURE,(DWORD_PTR)(UINT_PTR)(hwnd),(DWORD_PTR)0) | 
 
 
 
 
 | 383 | #define ICGetState(hic,pv,cb) ICSendMessage(hic,ICM_GETSTATE,(DWORD_PTR)(LPVOID)(pv),(DWORD_PTR)(cb)) | 
 
 
 
 
 | 384 | #define ICSetState(hic,pv,cb) ICSendMessage(hic,ICM_SETSTATE,(DWORD_PTR)(LPVOID)(pv),(DWORD_PTR)(cb)) | 
 
 
 
 
 | 385 | #define ICGetStateSize(hic) (DWORD) ICGetState(hic,NULL,0) | 
 
 
 
 
 | 386 |  | 
 
 
 
 
 | 387 | static DWORD dwICValue; | 
 
 
 
 
 | 388 |  | 
 
 
 
 
 | 389 | #define ICGetDefaultQuality(hic) (ICSendMessage(hic,ICM_GETDEFAULTQUALITY,(DWORD_PTR)(LPVOID)&dwICValue,sizeof(DWORD)),dwICValue) | 
 
 
 
 
 | 390 | #define ICGetDefaultKeyFrameRate(hic) (ICSendMessage(hic,ICM_GETDEFAULTKEYFRAMERATE,(DWORD_PTR)(LPVOID)&dwICValue,sizeof(DWORD)),dwICValue) | 
 
 
 
 
 | 391 | #define ICDrawWindow(hic,prc) ICSendMessage(hic,ICM_DRAW_WINDOW,(DWORD_PTR)(LPVOID)(prc),sizeof(RECT)) | 
 
 
 
 
 | 392 |  | 
 
 
 
 
 | 393 | DWORD WINAPIV ICCompress(HIC hic,DWORD dwFlags,LPBITMAPINFOHEADER lpbiOutput,LPVOID lpData,LPBITMAPINFOHEADER lpbiInput,LPVOID lpBits,LPDWORD lpckid,LPDWORD lpdwFlags,LONG lFrameNum,DWORD dwFrameSize,DWORD dwQuality,LPBITMAPINFOHEADER lpbiPrev,LPVOID lpPrev); | 
 
 
 
 
 | 394 |  | 
 
 
 
 
 | 395 | #define ICCompressBegin(hic,lpbiInput,lpbiOutput) ICSendMessage(hic,ICM_COMPRESS_BEGIN,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 396 | #define ICCompressQuery(hic,lpbiInput,lpbiOutput) ICSendMessage(hic,ICM_COMPRESS_QUERY,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 397 | #define ICCompressGetFormat(hic,lpbiInput,lpbiOutput) ICSendMessage(hic,ICM_COMPRESS_GET_FORMAT,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 398 | #define ICCompressGetFormatSize(hic,lpbi) (DWORD) ICCompressGetFormat(hic,lpbi,NULL) | 
 
 
 
 
 | 399 | #define ICCompressGetSize(hic,lpbiInput,lpbiOutput) (DWORD) ICSendMessage(hic,ICM_COMPRESS_GET_SIZE,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 400 | #define ICCompressEnd(hic) ICSendMessage(hic,ICM_COMPRESS_END,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 401 | #define ICDECOMPRESS_HURRYUP __MSABI_LONG(0x80000000) | 
 
 
 
 
 | 402 |  | 
 
 
 
 
 | 403 | DWORD WINAPIV ICDecompress(HIC hic,DWORD dwFlags,LPBITMAPINFOHEADER lpbiFormat,LPVOID lpData,LPBITMAPINFOHEADER lpbi,LPVOID lpBits); | 
 
 
 
 
 | 404 |  | 
 
 
 
 
 | 405 | #define ICDecompressBegin(hic,lpbiInput,lpbiOutput) ICSendMessage(hic,ICM_DECOMPRESS_BEGIN,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 406 | #define ICDecompressQuery(hic,lpbiInput,lpbiOutput) ICSendMessage(hic,ICM_DECOMPRESS_QUERY,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 407 | #define ICDecompressGetFormat(hic,lpbiInput,lpbiOutput) ((LONG) ICSendMessage(hic,ICM_DECOMPRESS_GET_FORMAT,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput))) | 
 
 
 
 
 | 408 | #define ICDecompressGetFormatSize(hic,lpbi) ICDecompressGetFormat(hic,lpbi,NULL) | 
 
 
 
 
 | 409 | #define ICDecompressGetPalette(hic,lpbiInput,lpbiOutput) ICSendMessage(hic,ICM_DECOMPRESS_GET_PALETTE,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD_PTR)(LPVOID)(lpbiOutput)) | 
 
 
 
 
 | 410 | #define ICDecompressSetPalette(hic,lpbiPalette) ICSendMessage(hic,ICM_DECOMPRESS_SET_PALETTE,(DWORD_PTR)(LPVOID)(lpbiPalette),(DWORD_PTR)0) | 
 
 
 
 
 | 411 | #define ICDecompressEnd(hic) ICSendMessage(hic,ICM_DECOMPRESS_END,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 412 |  | 
 
 
 
 
 | 413 | #ifndef __CRT__NO_INLINE | 
 
 
 
 
 | 414 | __CRT_INLINE LRESULT WINAPI ICDecompressEx(HIC hic,DWORD dwFlags,LPBITMAPINFOHEADER lpbiSrc,LPVOID lpSrc,int xSrc,int ySrc,int dxSrc,int dySrc,LPBITMAPINFOHEADER lpbiDst,LPVOID lpDst,int xDst,int yDst,int dxDst,int dyDst) { | 
 
 
 
 
 | 415 | ICDECOMPRESSEX ic; | 
 
 
 
 
 | 416 | ic.dwFlags = dwFlags; | 
 
 
 
 
 | 417 | ic.lpbiSrc = lpbiSrc; | 
 
 
 
 
 | 418 | ic.lpSrc = lpSrc; | 
 
 
 
 
 | 419 | ic.xSrc = xSrc; | 
 
 
 
 
 | 420 | ic.ySrc = ySrc; | 
 
 
 
 
 | 421 | ic.dxSrc = dxSrc; | 
 
 
 
 
 | 422 | ic.dySrc = dySrc; | 
 
 
 
 
 | 423 | ic.lpbiDst = lpbiDst; | 
 
 
 
 
 | 424 | ic.lpDst = lpDst; | 
 
 
 
 
 | 425 | ic.xDst = xDst; | 
 
 
 
 
 | 426 | ic.yDst = yDst; | 
 
 
 
 
 | 427 | ic.dxDst = dxDst; | 
 
 
 
 
 | 428 | ic.dyDst = dyDst; | 
 
 
 
 
 | 429 | return ICSendMessage(hic,ICM_DECOMPRESSEX,(DWORD_PTR)&ic,sizeof(ic)); | 
 
 
 
 
 | 430 | } | 
 
 
 
 
 | 431 |  | 
 
 
 
 
 | 432 | __CRT_INLINE LRESULT WINAPI ICDecompressExBegin(HIC hic,DWORD dwFlags,LPBITMAPINFOHEADER lpbiSrc,LPVOID lpSrc,int xSrc,int ySrc,int dxSrc,int dySrc,LPBITMAPINFOHEADER lpbiDst,LPVOID lpDst,int xDst,int yDst,int dxDst,int dyDst) { | 
 
 
 
 
 | 433 | ICDECOMPRESSEX ic; | 
 
 
 
 
 | 434 | ic.dwFlags = dwFlags; | 
 
 
 
 
 | 435 | ic.lpbiSrc = lpbiSrc; | 
 
 
 
 
 | 436 | ic.lpSrc = lpSrc; | 
 
 
 
 
 | 437 | ic.xSrc = xSrc; | 
 
 
 
 
 | 438 | ic.ySrc = ySrc; | 
 
 
 
 
 | 439 | ic.dxSrc = dxSrc; | 
 
 
 
 
 | 440 | ic.dySrc = dySrc; | 
 
 
 
 
 | 441 | ic.lpbiDst = lpbiDst; | 
 
 
 
 
 | 442 | ic.lpDst = lpDst; | 
 
 
 
 
 | 443 | ic.xDst = xDst; | 
 
 
 
 
 | 444 | ic.yDst = yDst; | 
 
 
 
 
 | 445 | ic.dxDst = dxDst; | 
 
 
 
 
 | 446 | ic.dyDst = dyDst; | 
 
 
 
 
 | 447 | return ICSendMessage(hic,ICM_DECOMPRESSEX_BEGIN,(DWORD_PTR)&ic,sizeof(ic)); | 
 
 
 
 
 | 448 | } | 
 
 
 
 
 | 449 |  | 
 
 
 
 
 | 450 | __CRT_INLINE LRESULT WINAPI ICDecompressExQuery(HIC hic,DWORD dwFlags,LPBITMAPINFOHEADER lpbiSrc,LPVOID lpSrc,int xSrc,int ySrc,int dxSrc,int dySrc,LPBITMAPINFOHEADER lpbiDst,LPVOID lpDst,int xDst,int yDst,int dxDst,int dyDst) { | 
 
 
 
 
 | 451 | ICDECOMPRESSEX ic; | 
 
 
 
 
 | 452 | ic.dwFlags = dwFlags; | 
 
 
 
 
 | 453 | ic.lpbiSrc = lpbiSrc; | 
 
 
 
 
 | 454 | ic.lpSrc = lpSrc; | 
 
 
 
 
 | 455 | ic.xSrc = xSrc; | 
 
 
 
 
 | 456 | ic.ySrc = ySrc; | 
 
 
 
 
 | 457 | ic.dxSrc = dxSrc; | 
 
 
 
 
 | 458 | ic.dySrc = dySrc; | 
 
 
 
 
 | 459 | ic.lpbiDst = lpbiDst; | 
 
 
 
 
 | 460 | ic.lpDst = lpDst; | 
 
 
 
 
 | 461 | ic.xDst = xDst; | 
 
 
 
 
 | 462 | ic.yDst = yDst; | 
 
 
 
 
 | 463 | ic.dxDst = dxDst; | 
 
 
 
 
 | 464 | ic.dyDst = dyDst; | 
 
 
 
 
 | 465 | return ICSendMessage(hic,ICM_DECOMPRESSEX_QUERY,(DWORD_PTR)&ic,sizeof(ic)); | 
 
 
 
 
 | 466 | } | 
 
 
 
 
 | 467 | #endif /* !__CRT__NO_INLINE */ | 
 
 
 
 
 | 468 |  | 
 
 
 
 
 | 469 | #define ICDecompressExEnd(hic) ICSendMessage(hic,ICM_DECOMPRESSEX_END,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 470 |  | 
 
 
 
 
 | 471 | #define ICDRAW_QUERY __MSABI_LONG(0x00000001) | 
 
 
 
 
 | 472 | #define ICDRAW_FULLSCREEN __MSABI_LONG(0x00000002) | 
 
 
 
 
 | 473 | #define ICDRAW_HDC __MSABI_LONG(0x00000004) | 
 
 
 
 
 | 474 |  | 
 
 
 
 
 | 475 | DWORD WINAPIV ICDrawBegin(HIC hic,DWORD dwFlags,HPALETTE hpal,HWND hwnd,HDC hdc,int xDst,int yDst,int dxDst,int dyDst,LPBITMAPINFOHEADER lpbi,int xSrc,int ySrc,int dxSrc,int dySrc,DWORD dwRate,DWORD dwScale); | 
 
 
 
 
 | 476 |  | 
 
 
 
 
 | 477 | #define ICDRAW_HURRYUP __MSABI_LONG(0x80000000) | 
 
 
 
 
 | 478 | #define ICDRAW_UPDATE __MSABI_LONG(0x40000000) | 
 
 
 
 
 | 479 |  | 
 
 
 
 
 | 480 | DWORD WINAPIV ICDraw(HIC hic,DWORD dwFlags,LPVOID lpFormat,LPVOID lpData,DWORD cbData,LONG lTime); | 
 
 
 
 
 | 481 |  | 
 
 
 
 
 | 482 | #ifndef __CRT__NO_INLINE | 
 
 
 
 
 | 483 | __CRT_INLINE LRESULT WINAPI ICDrawSuggestFormat(HIC hic,LPBITMAPINFOHEADER lpbiIn,LPBITMAPINFOHEADER lpbiOut,int dxSrc,int dySrc,int dxDst,int dyDst,HIC hicDecomp) { | 
 
 
 
 
 | 484 | ICDRAWSUGGEST ic; | 
 
 
 
 
 | 485 | ic.lpbiIn = lpbiIn; | 
 
 
 
 
 | 486 | ic.lpbiSuggest = lpbiOut; | 
 
 
 
 
 | 487 | ic.dxSrc = dxSrc; | 
 
 
 
 
 | 488 | ic.dySrc = dySrc; | 
 
 
 
 
 | 489 | ic.dxDst = dxDst; | 
 
 
 
 
 | 490 | ic.dyDst = dyDst; | 
 
 
 
 
 | 491 | ic.hicDecompressor = hicDecomp; | 
 
 
 
 
 | 492 | return ICSendMessage(hic,ICM_DRAW_SUGGESTFORMAT,(DWORD_PTR)&ic,sizeof(ic)); | 
 
 
 
 
 | 493 | } | 
 
 
 
 
 | 494 | #endif /* !__CRT__NO_INLINE */ | 
 
 
 
 
 | 495 |  | 
 
 
 
 
 | 496 | #define ICDrawQuery(hic,lpbiInput) ICSendMessage(hic,ICM_DRAW_QUERY,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD)0) | 
 
 
 
 
 | 497 | #define ICDrawChangePalette(hic,lpbiInput) ICSendMessage(hic,ICM_DRAW_CHANGEPALETTE,(DWORD_PTR)(LPVOID)(lpbiInput),(DWORD)0) | 
 
 
 
 
 | 498 | #define ICGetBuffersWanted(hic,lpdwBuffers) ICSendMessage(hic,ICM_GETBUFFERSWANTED,(DWORD_PTR)(LPVOID)(lpdwBuffers),(DWORD_PTR)0) | 
 
 
 
 
 | 499 | #define ICDrawEnd(hic) ICSendMessage(hic,ICM_DRAW_END,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 500 | #define ICDrawStart(hic) ICSendMessage(hic,ICM_DRAW_START,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 501 | #define ICDrawStartPlay(hic,lFrom,lTo) ICSendMessage(hic,ICM_DRAW_START_PLAY,(DWORD_PTR)(lFrom),(DWORD_PTR)(lTo)) | 
 
 
 
 
 | 502 | #define ICDrawStop(hic) ICSendMessage(hic,ICM_DRAW_STOP,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 503 | #define ICDrawStopPlay(hic) ICSendMessage(hic,ICM_DRAW_STOP_PLAY,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 504 | #define ICDrawGetTime(hic,lplTime) ICSendMessage(hic,ICM_DRAW_GETTIME,(DWORD_PTR)(LPVOID)(lplTime),(DWORD_PTR)0) | 
 
 
 
 
 | 505 | #define ICDrawSetTime(hic,lTime) ICSendMessage(hic,ICM_DRAW_SETTIME,(DWORD_PTR)lTime,(DWORD_PTR)0) | 
 
 
 
 
 | 506 | #define ICDrawRealize(hic,hdc,fBackground) ICSendMessage(hic,ICM_DRAW_REALIZE,(DWORD_PTR)(UINT_PTR)(HDC)(hdc),(DWORD_PTR)(WINBOOL)(fBackground)) | 
 
 
 
 
 | 507 | #define ICDrawFlush(hic) ICSendMessage(hic,ICM_DRAW_FLUSH,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 508 | #define ICDrawRenderBuffer(hic) ICSendMessage(hic,ICM_DRAW_RENDERBUFFER,(DWORD_PTR)0,(DWORD_PTR)0) | 
 
 
 
 
 | 509 |  | 
 
 
 
 
 | 510 | #ifndef __CRT__NO_INLINE | 
 
 
 
 
 | 511 | __CRT_INLINE LRESULT WINAPI ICSetStatusProc(HIC hic,DWORD dwFlags,LRESULT lParam,LONG (CALLBACK *fpfnStatus)(LPARAM,UINT,LONG)) { | 
 
 
 
 
 | 512 | ICSETSTATUSPROC ic; | 
 
 
 
 
 | 513 | ic.dwFlags = dwFlags; | 
 
 
 
 
 | 514 | ic.lParam = lParam; | 
 
 
 
 
 | 515 | ic.Status = fpfnStatus; | 
 
 
 
 
 | 516 | return ICSendMessage(hic,ICM_SET_STATUS_PROC,(DWORD_PTR)&ic,sizeof(ic)); | 
 
 
 
 
 | 517 | } | 
 
 
 
 
 | 518 | #endif /* !__CRT__NO_INLINE */ | 
 
 
 
 
 | 519 |  | 
 
 
 
 
 | 520 | #define ICDecompressOpen(fccType,fccHandler,lpbiIn,lpbiOut) ICLocate(fccType,fccHandler,lpbiIn,lpbiOut,ICMODE_DECOMPRESS) | 
 
 
 
 
 | 521 | #define ICDrawOpen(fccType,fccHandler,lpbiIn) ICLocate(fccType,fccHandler,lpbiIn,NULL,ICMODE_DRAW) | 
 
 
 
 
 | 522 |  | 
 
 
 
 
 | 523 | HIC WINAPI ICLocate(DWORD fccType,DWORD fccHandler,LPBITMAPINFOHEADER lpbiIn,LPBITMAPINFOHEADER lpbiOut,WORD wFlags); | 
 
 
 
 
 | 524 | HIC WINAPI ICGetDisplayFormat(HIC hic,LPBITMAPINFOHEADER lpbiIn,LPBITMAPINFOHEADER lpbiOut,int BitDepth,int dx,int dy); | 
 
 
 
 
 | 525 | HANDLE WINAPI ICImageCompress(HIC hic,UINT uiFlags,LPBITMAPINFO lpbiIn,LPVOID lpBits,LPBITMAPINFO lpbiOut,LONG lQuality,LONG *plSize); | 
 
 
 
 
 | 526 | HANDLE WINAPI ICImageDecompress(HIC hic,UINT uiFlags,LPBITMAPINFO lpbiIn,LPVOID lpBits,LPBITMAPINFO lpbiOut); | 
 
 
 
 
 | 527 |  | 
 
 
 
 
 | 528 | typedef struct { | 
 
 
 
 
 | 529 | LONG cbSize; | 
 
 
 
 
 | 530 | DWORD dwFlags; | 
 
 
 
 
 | 531 | HIC hic; | 
 
 
 
 
 | 532 | DWORD fccType; | 
 
 
 
 
 | 533 | DWORD fccHandler; | 
 
 
 
 
 | 534 | LPBITMAPINFO lpbiIn; | 
 
 
 
 
 | 535 | LPBITMAPINFO lpbiOut; | 
 
 
 
 
 | 536 | LPVOID lpBitsOut; | 
 
 
 
 
 | 537 | LPVOID lpBitsPrev; | 
 
 
 
 
 | 538 | LONG lFrame; | 
 
 
 
 
 | 539 | LONG lKey; | 
 
 
 
 
 | 540 | LONG lDataRate; | 
 
 
 
 
 | 541 | LONG lQ; | 
 
 
 
 
 | 542 | LONG lKeyCount; | 
 
 
 
 
 | 543 | LPVOID lpState; | 
 
 
 
 
 | 544 | LONG cbState; | 
 
 
 
 
 | 545 | } COMPVARS,*PCOMPVARS; | 
 
 
 
 
 | 546 |  | 
 
 
 
 
 | 547 | #define ICMF_COMPVARS_VALID 0x00000001 | 
 
 
 
 
 | 548 |  | 
 
 
 
 
 | 549 | WINBOOL WINAPI ICCompressorChoose(HWND hwnd,UINT uiFlags,LPVOID pvIn,LPVOID lpData,PCOMPVARS pc,LPSTR lpszTitle); | 
 
 
 
 
 | 550 |  | 
 
 
 
 
 | 551 | #define ICMF_CHOOSE_KEYFRAME 0x0001 | 
 
 
 
 
 | 552 | #define ICMF_CHOOSE_DATARATE 0x0002 | 
 
 
 
 
 | 553 | #define ICMF_CHOOSE_PREVIEW 0x0004 | 
 
 
 
 
 | 554 | #define ICMF_CHOOSE_ALLCOMPRESSORS 0x0008 | 
 
 
 
 
 | 555 |  | 
 
 
 
 
 | 556 | WINBOOL WINAPI ICSeqCompressFrameStart(PCOMPVARS pc,LPBITMAPINFO lpbiIn); | 
 
 
 
 
 | 557 | void WINAPI ICSeqCompressFrameEnd(PCOMPVARS pc); | 
 
 
 
 
 | 558 | LPVOID WINAPI ICSeqCompressFrame(PCOMPVARS pc,UINT uiFlags,LPVOID lpBits,WINBOOL *pfKey,LONG *plSize); | 
 
 
 
 
 | 559 | void WINAPI ICCompressorFree(PCOMPVARS pc); | 
 
 
 
 
 | 560 | #endif | 
 
 
 
 
 | 561 |  | 
 
 
 
 
 | 562 | #ifndef NODRAWDIB | 
 
 
 
 
 | 563 |  | 
 
 
 
 
 | 564 | typedef HANDLE HDRAWDIB; | 
 
 
 
 
 | 565 |  | 
 
 
 
 
 | 566 | #define DDF_0001 0x0001 | 
 
 
 
 
 | 567 | #define DDF_UPDATE 0x0002 | 
 
 
 
 
 | 568 | #define DDF_SAME_HDC 0x0004 | 
 
 
 
 
 | 569 | #define DDF_SAME_DRAW 0x0008 | 
 
 
 
 
 | 570 | #define DDF_DONTDRAW 0x0010 | 
 
 
 
 
 | 571 | #define DDF_ANIMATE 0x0020 | 
 
 
 
 
 | 572 | #define DDF_BUFFER 0x0040 | 
 
 
 
 
 | 573 | #define DDF_JUSTDRAWIT 0x0080 | 
 
 
 
 
 | 574 | #define DDF_FULLSCREEN 0x0100 | 
 
 
 
 
 | 575 | #define DDF_BACKGROUNDPAL 0x0200 | 
 
 
 
 
 | 576 | #define DDF_NOTKEYFRAME 0x0400 | 
 
 
 
 
 | 577 | #define DDF_HURRYUP 0x0800 | 
 
 
 
 
 | 578 | #define DDF_HALFTONE 0x1000 | 
 
 
 
 
 | 579 | #define DDF_2000 0x2000 | 
 
 
 
 
 | 580 |  | 
 
 
 
 
 | 581 | #define DDF_PREROLL DDF_DONTDRAW | 
 
 
 
 
 | 582 | #define DDF_SAME_DIB DDF_SAME_DRAW | 
 
 
 
 
 | 583 | #define DDF_SAME_SIZE DDF_SAME_DRAW | 
 
 
 
 
 | 584 |  | 
 
 
 
 
 | 585 | extern WINBOOL WINAPI DrawDibInit(void); | 
 
 
 
 
 | 586 | extern HDRAWDIB WINAPI DrawDibOpen(void); | 
 
 
 
 
 | 587 | extern WINBOOL WINAPI DrawDibClose(HDRAWDIB hdd); | 
 
 
 
 
 | 588 | extern LPVOID WINAPI DrawDibGetBuffer(HDRAWDIB hdd,LPBITMAPINFOHEADER lpbi,DWORD dwSize,DWORD dwFlags); | 
 
 
 
 
 | 589 | extern UINT WINAPI DrawDibError(HDRAWDIB hdd); | 
 
 
 
 
 | 590 | extern HPALETTE WINAPI DrawDibGetPalette(HDRAWDIB hdd); | 
 
 
 
 
 | 591 | extern WINBOOL WINAPI DrawDibSetPalette(HDRAWDIB hdd,HPALETTE hpal); | 
 
 
 
 
 | 592 | extern WINBOOL WINAPI DrawDibChangePalette(HDRAWDIB hdd,int iStart,int iLen,LPPALETTEENTRY lppe); | 
 
 
 
 
 | 593 | extern UINT WINAPI DrawDibRealize(HDRAWDIB hdd,HDC hdc,WINBOOL fBackground); | 
 
 
 
 
 | 594 | extern WINBOOL WINAPI DrawDibStart(HDRAWDIB hdd,DWORD rate); | 
 
 
 
 
 | 595 | extern WINBOOL WINAPI DrawDibStop(HDRAWDIB hdd); | 
 
 
 
 
 | 596 | extern WINBOOL WINAPI DrawDibBegin(HDRAWDIB hdd,HDC hdc,int dxDst,int dyDst,LPBITMAPINFOHEADER lpbi,int dxSrc,int dySrc,UINT wFlags); | 
 
 
 
 
 | 597 | extern WINBOOL WINAPI DrawDibDraw(HDRAWDIB hdd,HDC hdc,int xDst,int yDst,int dxDst,int dyDst,LPBITMAPINFOHEADER lpbi,LPVOID lpBits,int xSrc,int ySrc,int dxSrc,int dySrc,UINT wFlags); | 
 
 
 
 
 | 598 |  | 
 
 
 
 
 | 599 | #define DrawDibUpdate(hdd,hdc,x,y) DrawDibDraw(hdd,hdc,x,y,0,0,NULL,NULL,0,0,0,0,DDF_UPDATE) | 
 
 
 
 
 | 600 |  | 
 
 
 
 
 | 601 | extern WINBOOL WINAPI DrawDibEnd(HDRAWDIB hdd); | 
 
 
 
 
 | 602 |  | 
 
 
 
 
 | 603 | typedef struct { | 
 
 
 
 
 | 604 | LONG timeCount; | 
 
 
 
 
 | 605 | LONG timeDraw; | 
 
 
 
 
 | 606 | LONG timeDecompress; | 
 
 
 
 
 | 607 | LONG timeDither; | 
 
 
 
 
 | 608 | LONG timeStretch; | 
 
 
 
 
 | 609 | LONG timeBlt; | 
 
 
 
 
 | 610 | LONG timeSetDIBits; | 
 
 
 
 
 | 611 | } DRAWDIBTIME,*LPDRAWDIBTIME; | 
 
 
 
 
 | 612 |  | 
 
 
 
 
 | 613 | WINBOOL WINAPI DrawDibTime(HDRAWDIB hdd,LPDRAWDIBTIME lpddtime); | 
 
 
 
 
 | 614 |  | 
 
 
 
 
 | 615 | #define PD_CAN_DRAW_DIB 0x0001 | 
 
 
 
 
 | 616 | #define PD_CAN_STRETCHDIB 0x0002 | 
 
 
 
 
 | 617 | #define PD_STRETCHDIB_1_1_OK 0x0004 | 
 
 
 
 
 | 618 | #define PD_STRETCHDIB_1_2_OK 0x0008 | 
 
 
 
 
 | 619 | #define PD_STRETCHDIB_1_N_OK 0x0010 | 
 
 
 
 
 | 620 |  | 
 
 
 
 
 | 621 | LRESULT WINAPI DrawDibProfileDisplay(LPBITMAPINFOHEADER lpbi); | 
 
 
 
 
 | 622 |  | 
 
 
 
 
 | 623 | #ifdef DRAWDIB_INCLUDE_STRETCHDIB | 
 
 
 
 
 | 624 | void WINAPI StretchDIB(LPBITMAPINFOHEADER biDst,LPVOID lpDst,int DstX,int DstY,int DstXE,int DstYE,LPBITMAPINFOHEADER biSrc,LPVOID lpSrc,int SrcX,int SrcY,int SrcXE,int SrcYE); | 
 
 
 
 
 | 625 | #endif | 
 
 
 
 
 | 626 | #endif | 
 
 
 
 
 | 627 |  | 
 
 
 
 
 | 628 | #ifndef NOAVIFMT | 
 
 
 
 
 | 629 | #ifndef _INC_MMSYSTEM | 
 
 
 
 
 | 630 | typedef DWORD FOURCC; | 
 
 
 
 
 | 631 | #endif | 
 
 
 
 
 | 632 |  | 
 
 
 
 
 | 633 | /* This part of the file is duplicated in avifmt.h */ | 
 
 
 
 
 | 634 | #ifndef mmioFOURCC | 
 
 
 
 
 | 635 | #define mmioFOURCC(ch0,ch1,ch2,ch3) ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24)) | 
 
 
 
 
 | 636 | #endif | 
 
 
 
 
 | 637 |  | 
 
 
 
 
 | 638 | #ifndef aviTWOCC | 
 
 
 
 
 | 639 | #define aviTWOCC(ch0,ch1) ((WORD)(BYTE)(ch0) | ((WORD)(BYTE)(ch1) << 8)) | 
 
 
 
 
 | 640 | #endif | 
 
 
 
 
 | 641 |  | 
 
 
 
 
 | 642 | typedef WORD TWOCC; | 
 
 
 
 
 | 643 |  | 
 
 
 
 
 | 644 | #define formtypeAVI mmioFOURCC('A','V','I',' ') | 
 
 
 
 
 | 645 | #define listtypeAVIHEADER mmioFOURCC('h','d','r','l') | 
 
 
 
 
 | 646 | #define ckidAVIMAINHDR mmioFOURCC('a','v','i','h') | 
 
 
 
 
 | 647 | #define listtypeSTREAMHEADER mmioFOURCC('s','t','r','l') | 
 
 
 
 
 | 648 | #define ckidSTREAMHEADER mmioFOURCC('s','t','r','h') | 
 
 
 
 
 | 649 | #define ckidSTREAMFORMAT mmioFOURCC('s','t','r','f') | 
 
 
 
 
 | 650 | #define ckidSTREAMHANDLERDATA mmioFOURCC('s','t','r','d') | 
 
 
 
 
 | 651 | #define ckidSTREAMNAME mmioFOURCC('s','t','r','n') | 
 
 
 
 
 | 652 |  | 
 
 
 
 
 | 653 | #define listtypeAVIMOVIE mmioFOURCC('m','o','v','i') | 
 
 
 
 
 | 654 | #define listtypeAVIRECORD mmioFOURCC('r','e','c',' ') | 
 
 
 
 
 | 655 |  | 
 
 
 
 
 | 656 | #define ckidAVINEWINDEX mmioFOURCC('i','d','x','1') | 
 
 
 
 
 | 657 |  | 
 
 
 
 
 | 658 | #define streamtypeANY __MSABI_LONG(0U) | 
 
 
 
 
 | 659 | #define streamtypeVIDEO mmioFOURCC('v','i','d','s') | 
 
 
 
 
 | 660 | #define streamtypeAUDIO mmioFOURCC('a','u','d','s') | 
 
 
 
 
 | 661 | #define streamtypeMIDI mmioFOURCC('m','i','d','s') | 
 
 
 
 
 | 662 | #define streamtypeTEXT mmioFOURCC('t','x','t','s') | 
 
 
 
 
 | 663 |  | 
 
 
 
 
 | 664 | #define cktypeDIBbits aviTWOCC('d','b') | 
 
 
 
 
 | 665 | #define cktypeDIBcompressed aviTWOCC('d','c') | 
 
 
 
 
 | 666 | #define cktypePALchange aviTWOCC('p','c') | 
 
 
 
 
 | 667 | #define cktypeWAVEbytes aviTWOCC('w','b') | 
 
 
 
 
 | 668 |  | 
 
 
 
 
 | 669 | #define ckidAVIPADDING mmioFOURCC('J','U','N','K') | 
 
 
 
 
 | 670 |  | 
 
 
 
 
 | 671 | #define FromHex(n) (((n) >= 'A') ? ((n) + 10 - 'A') : ((n) - '0')) | 
 
 
 
 
 | 672 | #define StreamFromFOURCC(fcc) ((WORD) ((FromHex(LOBYTE(LOWORD(fcc))) << 4) + (FromHex(HIBYTE(LOWORD(fcc)))))) | 
 
 
 
 
 | 673 |  | 
 
 
 
 
 | 674 | #define TWOCCFromFOURCC(fcc) HIWORD(fcc) | 
 
 
 
 
 | 675 |  | 
 
 
 
 
 | 676 | #define ToHex(n) ((BYTE) (((n) > 9) ? ((n) - 10 + 'A') : ((n) + '0'))) | 
 
 
 
 
 | 677 | #define MAKEAVICKID(tcc,stream) MAKELONG((ToHex((stream) & 0x0f) << 8) | (ToHex(((stream) & 0xf0) >> 4)),tcc) | 
 
 
 
 
 | 678 |  | 
 
 
 
 
 | 679 | #define AVIF_HASINDEX 0x00000010 | 
 
 
 
 
 | 680 | #define AVIF_MUSTUSEINDEX 0x00000020 | 
 
 
 
 
 | 681 | #define AVIF_ISINTERLEAVED 0x00000100 | 
 
 
 
 
 | 682 | #define AVIF_TRUSTCKTYPE 0x00000800 | 
 
 
 
 
 | 683 | #define AVIF_WASCAPTUREFILE 0x00010000 | 
 
 
 
 
 | 684 | #define AVIF_COPYRIGHTED 0x00020000 | 
 
 
 
 
 | 685 |  | 
 
 
 
 
 | 686 | #define AVI_HEADERSIZE 2048 | 
 
 
 
 
 | 687 |  | 
 
 
 
 
 | 688 | typedef struct { | 
 
 
 
 
 | 689 | DWORD dwMicroSecPerFrame; | 
 
 
 
 
 | 690 | DWORD dwMaxBytesPerSec; | 
 
 
 
 
 | 691 | DWORD dwPaddingGranularity; | 
 
 
 
 
 | 692 | DWORD dwFlags; | 
 
 
 
 
 | 693 | DWORD dwTotalFrames; | 
 
 
 
 
 | 694 | DWORD dwInitialFrames; | 
 
 
 
 
 | 695 | DWORD dwStreams; | 
 
 
 
 
 | 696 | DWORD dwSuggestedBufferSize; | 
 
 
 
 
 | 697 | DWORD dwWidth; | 
 
 
 
 
 | 698 | DWORD dwHeight; | 
 
 
 
 
 | 699 | DWORD dwReserved[4]; | 
 
 
 
 
 | 700 | } MainAVIHeader; | 
 
 
 
 
 | 701 |  | 
 
 
 
 
 | 702 | #define AVISF_DISABLED 0x00000001 | 
 
 
 
 
 | 703 | #define AVISF_VIDEO_PALCHANGES 0x00010000 | 
 
 
 
 
 | 704 |  | 
 
 
 
 
 | 705 | typedef struct { | 
 
 
 
 
 | 706 | FOURCC fccType; | 
 
 
 
 
 | 707 | FOURCC fccHandler; | 
 
 
 
 
 | 708 | DWORD dwFlags; | 
 
 
 
 
 | 709 | WORD wPriority; | 
 
 
 
 
 | 710 | WORD wLanguage; | 
 
 
 
 
 | 711 | DWORD dwInitialFrames; | 
 
 
 
 
 | 712 | DWORD dwScale; | 
 
 
 
 
 | 713 | DWORD dwRate; | 
 
 
 
 
 | 714 | DWORD dwStart; | 
 
 
 
 
 | 715 | DWORD dwLength; | 
 
 
 
 
 | 716 | DWORD dwSuggestedBufferSize; | 
 
 
 
 
 | 717 | DWORD dwQuality; | 
 
 
 
 
 | 718 | DWORD dwSampleSize; | 
 
 
 
 
 | 719 | RECT rcFrame; | 
 
 
 
 
 | 720 | } AVIStreamHeader; | 
 
 
 
 
 | 721 |  | 
 
 
 
 
 | 722 | #define AVIIF_LIST __MSABI_LONG(0x00000001) | 
 
 
 
 
 | 723 | #define AVIIF_KEYFRAME __MSABI_LONG(0x00000010) | 
 
 
 
 
 | 724 | #define AVIIF_FIRSTPART __MSABI_LONG(0x00000020) | 
 
 
 
 
 | 725 | #define AVIIF_LASTPART __MSABI_LONG(0x00000040) | 
 
 
 
 
 | 726 | #define AVIIF_MIDPART (AVIIF_LASTPART|AVIIF_FIRSTPART) | 
 
 
 
 
 | 727 |  | 
 
 
 
 
 | 728 | #define AVIIF_NOTIME __MSABI_LONG(0x00000100) | 
 
 
 
 
 | 729 | #define AVIIF_COMPUSE __MSABI_LONG(0x0FFF0000) | 
 
 
 
 
 | 730 |  | 
 
 
 
 
 | 731 | typedef struct { | 
 
 
 
 
 | 732 | DWORD ckid; | 
 
 
 
 
 | 733 | DWORD dwFlags; | 
 
 
 
 
 | 734 | DWORD dwChunkOffset; | 
 
 
 
 
 | 735 | DWORD dwChunkLength; | 
 
 
 
 
 | 736 | } AVIINDEXENTRY; | 
 
 
 
 
 | 737 |  | 
 
 
 
 
 | 738 | typedef struct { | 
 
 
 
 
 | 739 | BYTE bFirstEntry; | 
 
 
 
 
 | 740 | BYTE bNumEntries; | 
 
 
 
 
 | 741 | WORD wFlags; | 
 
 
 
 
 | 742 | PALETTEENTRY peNew[]; | 
 
 
 
 
 | 743 | } AVIPALCHANGE; | 
 
 
 
 
 | 744 | #endif | 
 
 
 
 
 | 745 | /* End of duplication */ | 
 
 
 
 
 | 746 |  | 
 
 
 
 
 | 747 | #ifdef __cplusplus | 
 
 
 
 
 | 748 | } | 
 
 
 
 
 | 749 | #endif | 
 
 
 
 
 | 750 |  | 
 
 
 
 
 | 751 | #ifndef RC_INVOKED | 
 
 
 
 
 | 752 | #include "pshpack8.h" | 
 
 
 
 
 | 753 | #endif | 
 
 
 
 
 | 754 |  | 
 
 
 
 
 | 755 | #ifndef NOMMREG | 
 
 
 
 
 | 756 | #include <mmreg.h> | 
 
 
 
 
 | 757 | #endif | 
 
 
 
 
 | 758 |  | 
 
 
 
 
 | 759 | #ifdef __cplusplus | 
 
 
 
 
 | 760 | extern "C" { | 
 
 
 
 
 | 761 | #endif | 
 
 
 
 
 | 762 |  | 
 
 
 
 
 | 763 | #ifndef NOAVIFILE | 
 
 
 
 
 | 764 | #ifndef mmioFOURCC | 
 
 
 
 
 | 765 | #define mmioFOURCC(ch0,ch1,ch2,ch3) ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24)) | 
 
 
 
 
 | 766 | #endif | 
 
 
 
 
 | 767 |  | 
 
 
 
 
 | 768 | #ifndef streamtypeVIDEO | 
 
 
 
 
 | 769 | #define streamtypeANY __MSABI_LONG(0U) | 
 
 
 
 
 | 770 | #define streamtypeVIDEO mmioFOURCC('v','i','d','s') | 
 
 
 
 
 | 771 | #define streamtypeAUDIO mmioFOURCC('a','u','d','s') | 
 
 
 
 
 | 772 | #define streamtypeMIDI mmioFOURCC('m','i','d','s') | 
 
 
 
 
 | 773 | #define streamtypeTEXT mmioFOURCC('t','x','t','s') | 
 
 
 
 
 | 774 | #endif | 
 
 
 
 
 | 775 |  | 
 
 
 
 
 | 776 | #ifndef AVIIF_KEYFRAME | 
 
 
 
 
 | 777 | #define AVIIF_KEYFRAME __MSABI_LONG(0x00000010) | 
 
 
 
 
 | 778 | #endif | 
 
 
 
 
 | 779 |  | 
 
 
 
 
 | 780 | #define AVIGETFRAMEF_BESTDISPLAYFMT 1 | 
 
 
 
 
 | 781 |  | 
 
 
 
 
 | 782 | typedef struct _AVISTREAMINFOW { | 
 
 
 
 
 | 783 | DWORD fccType; | 
 
 
 
 
 | 784 | DWORD fccHandler; | 
 
 
 
 
 | 785 | DWORD dwFlags; | 
 
 
 
 
 | 786 | DWORD dwCaps; | 
 
 
 
 
 | 787 | WORD wPriority; | 
 
 
 
 
 | 788 | WORD wLanguage; | 
 
 
 
 
 | 789 | DWORD dwScale; | 
 
 
 
 
 | 790 | DWORD dwRate; | 
 
 
 
 
 | 791 | DWORD dwStart; | 
 
 
 
 
 | 792 | DWORD dwLength; | 
 
 
 
 
 | 793 | DWORD dwInitialFrames; | 
 
 
 
 
 | 794 | DWORD dwSuggestedBufferSize; | 
 
 
 
 
 | 795 | DWORD dwQuality; | 
 
 
 
 
 | 796 | DWORD dwSampleSize; | 
 
 
 
 
 | 797 | RECT rcFrame; | 
 
 
 
 
 | 798 | DWORD dwEditCount; | 
 
 
 
 
 | 799 | DWORD dwFormatChangeCount; | 
 
 
 
 
 | 800 | WCHAR szName[64]; | 
 
 
 
 
 | 801 | } AVISTREAMINFOW,*LPAVISTREAMINFOW; | 
 
 
 
 
 | 802 |  | 
 
 
 
 
 | 803 | typedef struct _AVISTREAMINFOA { | 
 
 
 
 
 | 804 | DWORD fccType; | 
 
 
 
 
 | 805 | DWORD fccHandler; | 
 
 
 
 
 | 806 | DWORD dwFlags; | 
 
 
 
 
 | 807 | DWORD dwCaps; | 
 
 
 
 
 | 808 | WORD wPriority; | 
 
 
 
 
 | 809 | WORD wLanguage; | 
 
 
 
 
 | 810 | DWORD dwScale; | 
 
 
 
 
 | 811 | DWORD dwRate; | 
 
 
 
 
 | 812 | DWORD dwStart; | 
 
 
 
 
 | 813 | DWORD dwLength; | 
 
 
 
 
 | 814 | DWORD dwInitialFrames; | 
 
 
 
 
 | 815 | DWORD dwSuggestedBufferSize; | 
 
 
 
 
 | 816 | DWORD dwQuality; | 
 
 
 
 
 | 817 | DWORD dwSampleSize; | 
 
 
 
 
 | 818 | RECT rcFrame; | 
 
 
 
 
 | 819 | DWORD dwEditCount; | 
 
 
 
 
 | 820 | DWORD dwFormatChangeCount; | 
 
 
 
 
 | 821 | char szName[64]; | 
 
 
 
 
 | 822 | } AVISTREAMINFOA,*LPAVISTREAMINFOA; | 
 
 
 
 
 | 823 |  | 
 
 
 
 
 | 824 | #define AVISTREAMINFO __MINGW_NAME_AW(AVISTREAMINFO) | 
 
 
 
 
 | 825 | #define LPAVISTREAMINFO __MINGW_NAME_AW(LPAVISTREAMINFO) | 
 
 
 
 
 | 826 |  | 
 
 
 
 
 | 827 | #define AVISTREAMINFO_DISABLED 0x00000001 | 
 
 
 
 
 | 828 | #define AVISTREAMINFO_FORMATCHANGES 0x00010000 | 
 
 
 
 
 | 829 |  | 
 
 
 
 
 | 830 | typedef struct _AVIFILEINFOW { | 
 
 
 
 
 | 831 | DWORD dwMaxBytesPerSec; | 
 
 
 
 
 | 832 | DWORD dwFlags; | 
 
 
 
 
 | 833 | DWORD dwCaps; | 
 
 
 
 
 | 834 | DWORD dwStreams; | 
 
 
 
 
 | 835 | DWORD dwSuggestedBufferSize; | 
 
 
 
 
 | 836 | DWORD dwWidth; | 
 
 
 
 
 | 837 | DWORD dwHeight; | 
 
 
 
 
 | 838 | DWORD dwScale; | 
 
 
 
 
 | 839 | DWORD dwRate; | 
 
 
 
 
 | 840 | DWORD dwLength; | 
 
 
 
 
 | 841 | DWORD dwEditCount; | 
 
 
 
 
 | 842 | WCHAR szFileType[64]; | 
 
 
 
 
 | 843 | } AVIFILEINFOW,*LPAVIFILEINFOW; | 
 
 
 
 
 | 844 |  | 
 
 
 
 
 | 845 | typedef struct _AVIFILEINFOA { | 
 
 
 
 
 | 846 | DWORD dwMaxBytesPerSec; | 
 
 
 
 
 | 847 | DWORD dwFlags; | 
 
 
 
 
 | 848 | DWORD dwCaps; | 
 
 
 
 
 | 849 | DWORD dwStreams; | 
 
 
 
 
 | 850 | DWORD dwSuggestedBufferSize; | 
 
 
 
 
 | 851 | DWORD dwWidth; | 
 
 
 
 
 | 852 | DWORD dwHeight; | 
 
 
 
 
 | 853 | DWORD dwScale; | 
 
 
 
 
 | 854 | DWORD dwRate; | 
 
 
 
 
 | 855 | DWORD dwLength; | 
 
 
 
 
 | 856 | DWORD dwEditCount; | 
 
 
 
 
 | 857 | char szFileType[64]; | 
 
 
 
 
 | 858 | } AVIFILEINFOA,*LPAVIFILEINFOA; | 
 
 
 
 
 | 859 |  | 
 
 
 
 
 | 860 | #define AVIFILEINFO __MINGW_NAME_AW(AVIFILEINFO) | 
 
 
 
 
 | 861 | #define LPAVIFILEINFO __MINGW_NAME_AW(LPAVIFILEINFO) | 
 
 
 
 
 | 862 |  | 
 
 
 
 
 | 863 | #define AVIFILEINFO_HASINDEX 0x00000010 | 
 
 
 
 
 | 864 | #define AVIFILEINFO_MUSTUSEINDEX 0x00000020 | 
 
 
 
 
 | 865 | #define AVIFILEINFO_ISINTERLEAVED 0x00000100 | 
 
 
 
 
 | 866 | #define AVIFILEINFO_TRUSTCKTYPE 0x00000800 | 
 
 
 
 
 | 867 | #define AVIFILEINFO_WASCAPTUREFILE 0x00010000 | 
 
 
 
 
 | 868 | #define AVIFILEINFO_COPYRIGHTED 0x00020000 | 
 
 
 
 
 | 869 |  | 
 
 
 
 
 | 870 | #define AVIFILECAPS_CANREAD 0x00000001 | 
 
 
 
 
 | 871 | #define AVIFILECAPS_CANWRITE 0x00000002 | 
 
 
 
 
 | 872 | #define AVIFILECAPS_ALLKEYFRAMES 0x00000010 | 
 
 
 
 
 | 873 | #define AVIFILECAPS_NOCOMPRESSION 0x00000020 | 
 
 
 
 
 | 874 |  | 
 
 
 
 
 | 875 | typedef WINBOOL (WINAPI *AVISAVECALLBACK)(int); | 
 
 
 
 
 | 876 |  | 
 
 
 
 
 | 877 | typedef struct { | 
 
 
 
 
 | 878 | DWORD fccType; | 
 
 
 
 
 | 879 | DWORD fccHandler; | 
 
 
 
 
 | 880 | DWORD dwKeyFrameEvery; | 
 
 
 
 
 | 881 | DWORD dwQuality; | 
 
 
 
 
 | 882 | DWORD dwBytesPerSecond; | 
 
 
 
 
 | 883 | DWORD dwFlags; | 
 
 
 
 
 | 884 | LPVOID lpFormat; | 
 
 
 
 
 | 885 | DWORD cbFormat; | 
 
 
 
 
 | 886 | LPVOID lpParms; | 
 
 
 
 
 | 887 | DWORD cbParms; | 
 
 
 
 
 | 888 | DWORD dwInterleaveEvery; | 
 
 
 
 
 | 889 | } AVICOMPRESSOPTIONS, FAR *LPAVICOMPRESSOPTIONS; | 
 
 
 
 
 | 890 |  | 
 
 
 
 
 | 891 | #define AVICOMPRESSF_INTERLEAVE 0x00000001 | 
 
 
 
 
 | 892 | #define AVICOMPRESSF_DATARATE 0x00000002 | 
 
 
 
 
 | 893 | #define AVICOMPRESSF_KEYFRAMES 0x00000004 | 
 
 
 
 
 | 894 | #define AVICOMPRESSF_VALID 0x00000008 | 
 
 
 
 
 | 895 |  | 
 
 
 
 
 | 896 | #ifdef __cplusplus | 
 
 
 
 
 | 897 | } | 
 
 
 
 
 | 898 | #endif | 
 
 
 
 
 | 899 |  | 
 
 
 
 
 | 900 | #include <ole2.h> | 
 
 
 
 
 | 901 |  | 
 
 
 
 
 | 902 | #ifdef __cplusplus | 
 
 
 
 
 | 903 | extern "C" { | 
 
 
 
 
 | 904 | #endif | 
 
 
 
 
 | 905 |  | 
 
 
 
 
 | 906 | #undef INTERFACE | 
 
 
 
 
 | 907 | #define INTERFACE IAVIStream | 
 
 
 
 
 | 908 | DECLARE_INTERFACE_(IAVIStream,IUnknown) { | 
 
 
 
 
 | 909 | STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *ppvObj) PURE; | 
 
 
 
 
 | 910 | STDMETHOD_(ULONG,AddRef) (THIS) PURE; | 
 
 
 
 
 | 911 | STDMETHOD_(ULONG,Release) (THIS) PURE; | 
 
 
 
 
 | 912 | STDMETHOD(Create) (THIS_ LPARAM lParam1,LPARAM lParam2) PURE; | 
 
 
 
 
 | 913 | STDMETHOD(Info) (THIS_ AVISTREAMINFOW *psi,LONG lSize) PURE; | 
 
 
 
 
 | 914 | STDMETHOD_(LONG,FindSample)(THIS_ LONG lPos,LONG lFlags) PURE; | 
 
 
 
 
 | 915 | STDMETHOD(ReadFormat) (THIS_ LONG lPos,LPVOID lpFormat,LONG *lpcbFormat) PURE; | 
 
 
 
 
 | 916 | STDMETHOD(SetFormat) (THIS_ LONG lPos,LPVOID lpFormat,LONG cbFormat) PURE; | 
 
 
 
 
 | 917 | STDMETHOD(Read) (THIS_ LONG lStart,LONG lSamples,LPVOID lpBuffer,LONG cbBuffer,LONG *plBytes,LONG *plSamples) PURE; | 
 
 
 
 
 | 918 | STDMETHOD(Write) (THIS_ LONG lStart,LONG lSamples,LPVOID lpBuffer,LONG cbBuffer,DWORD dwFlags,LONG *plSampWritten,LONG *plBytesWritten) PURE; | 
 
 
 
 
 | 919 | STDMETHOD(Delete) (THIS_ LONG lStart,LONG lSamples) PURE; | 
 
 
 
 
 | 920 | STDMETHOD(ReadData) (THIS_ DWORD fcc,LPVOID lp,LONG *lpcb) PURE; | 
 
 
 
 
 | 921 | STDMETHOD(WriteData) (THIS_ DWORD fcc,LPVOID lp,LONG cb) PURE; | 
 
 
 
 
 | 922 | STDMETHOD(SetInfo) (THIS_ AVISTREAMINFOW *lpInfo,LONG cbInfo) PURE; | 
 
 
 
 
 | 923 | }; | 
 
 
 
 
 | 924 |  | 
 
 
 
 
 | 925 | typedef IAVIStream *PAVISTREAM; | 
 
 
 
 
 | 926 |  | 
 
 
 
 
 | 927 | #undef INTERFACE | 
 
 
 
 
 | 928 | #define INTERFACE IAVIStreaming | 
 
 
 
 
 | 929 | DECLARE_INTERFACE_(IAVIStreaming,IUnknown) { | 
 
 
 
 
 | 930 | STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *ppvObj) PURE; | 
 
 
 
 
 | 931 | STDMETHOD_(ULONG,AddRef) (THIS) PURE; | 
 
 
 
 
 | 932 | STDMETHOD_(ULONG,Release) (THIS) PURE; | 
 
 
 
 
 | 933 | STDMETHOD(Begin) (THIS_ LONG lStart,LONG lEnd,LONG lRate) PURE; | 
 
 
 
 
 | 934 | STDMETHOD(End) (THIS) PURE; | 
 
 
 
 
 | 935 | }; | 
 
 
 
 
 | 936 |  | 
 
 
 
 
 | 937 | typedef IAVIStreaming *PAVISTREAMING; | 
 
 
 
 
 | 938 |  | 
 
 
 
 
 | 939 | #undef INTERFACE | 
 
 
 
 
 | 940 | #define INTERFACE IAVIEditStream | 
 
 
 
 
 | 941 | DECLARE_INTERFACE_(IAVIEditStream,IUnknown) { | 
 
 
 
 
 | 942 | STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *ppvObj) PURE; | 
 
 
 
 
 | 943 | STDMETHOD_(ULONG,AddRef) (THIS) PURE; | 
 
 
 
 
 | 944 | STDMETHOD_(ULONG,Release) (THIS) PURE; | 
 
 
 
 
 | 945 | STDMETHOD(Cut) (THIS_ LONG *plStart,LONG *plLength,PAVISTREAM *ppResult) PURE; | 
 
 
 
 
 | 946 | STDMETHOD(Copy) (THIS_ LONG *plStart,LONG *plLength,PAVISTREAM *ppResult) PURE; | 
 
 
 
 
 | 947 | STDMETHOD(Paste) (THIS_ LONG *plPos,LONG *plLength,PAVISTREAM pstream,LONG lStart,LONG lEnd) PURE; | 
 
 
 
 
 | 948 | STDMETHOD(Clone) (THIS_ PAVISTREAM *ppResult) PURE; | 
 
 
 
 
 | 949 | STDMETHOD(SetInfo) (THIS_ AVISTREAMINFOW *lpInfo,LONG cbInfo) PURE; | 
 
 
 
 
 | 950 | }; | 
 
 
 
 
 | 951 |  | 
 
 
 
 
 | 952 | typedef IAVIEditStream *PAVIEDITSTREAM; | 
 
 
 
 
 | 953 |  | 
 
 
 
 
 | 954 | #undef INTERFACE | 
 
 
 
 
 | 955 | #define INTERFACE IAVIPersistFile | 
 
 
 
 
 | 956 | DECLARE_INTERFACE_(IAVIPersistFile,IPersistFile) { | 
 
 
 
 
 | 957 | STDMETHOD(Reserved1)(THIS) PURE; | 
 
 
 
 
 | 958 | }; | 
 
 
 
 
 | 959 |  | 
 
 
 
 
 | 960 | typedef IAVIPersistFile *PAVIPERSISTFILE; | 
 
 
 
 
 | 961 |  | 
 
 
 
 
 | 962 | #undef INTERFACE | 
 
 
 
 
 | 963 | #define INTERFACE IAVIFile | 
 
 
 
 
 | 964 | #define PAVIFILE IAVIFile * | 
 
 
 
 
 | 965 | DECLARE_INTERFACE_(IAVIFile,IUnknown) { | 
 
 
 
 
 | 966 | STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *ppvObj) PURE; | 
 
 
 
 
 | 967 | STDMETHOD_(ULONG,AddRef) (THIS) PURE; | 
 
 
 
 
 | 968 | STDMETHOD_(ULONG,Release) (THIS) PURE; | 
 
 
 
 
 | 969 | STDMETHOD(Info) (THIS_ AVIFILEINFOW *pfi,LONG lSize) PURE; | 
 
 
 
 
 | 970 | STDMETHOD(GetStream) (THIS_ PAVISTREAM *ppStream,DWORD fccType,LONG lParam) PURE; | 
 
 
 
 
 | 971 | STDMETHOD(CreateStream) (THIS_ PAVISTREAM *ppStream,AVISTREAMINFOW *psi) PURE; | 
 
 
 
 
 | 972 | STDMETHOD(WriteData) (THIS_ DWORD ckid,LPVOID lpData,LONG cbData) PURE; | 
 
 
 
 
 | 973 | STDMETHOD(ReadData) (THIS_ DWORD ckid,LPVOID lpData,LONG *lpcbData) PURE; | 
 
 
 
 
 | 974 | STDMETHOD(EndRecord) (THIS) PURE; | 
 
 
 
 
 | 975 | STDMETHOD(DeleteStream) (THIS_ DWORD fccType,LONG lParam) PURE; | 
 
 
 
 
 | 976 | }; | 
 
 
 
 
 | 977 |  | 
 
 
 
 
 | 978 | #undef PAVIFILE | 
 
 
 
 
 | 979 | typedef IAVIFile *PAVIFILE; | 
 
 
 
 
 | 980 |  | 
 
 
 
 
 | 981 | #undef INTERFACE | 
 
 
 
 
 | 982 | #define INTERFACE IGetFrame | 
 
 
 
 
 | 983 | #define PGETFRAME IGetFrame * | 
 
 
 
 
 | 984 | DECLARE_INTERFACE_(IGetFrame,IUnknown) { | 
 
 
 
 
 | 985 | STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *ppvObj) PURE; | 
 
 
 
 
 | 986 | STDMETHOD_(ULONG,AddRef) (THIS) PURE; | 
 
 
 
 
 | 987 | STDMETHOD_(ULONG,Release) (THIS) PURE; | 
 
 
 
 
 | 988 | STDMETHOD_(LPVOID,GetFrame) (THIS_ LONG lPos) PURE; | 
 
 
 
 
 | 989 | STDMETHOD(Begin) (THIS_ LONG lStart,LONG lEnd,LONG lRate) PURE; | 
 
 
 
 
 | 990 | STDMETHOD(End) (THIS) PURE; | 
 
 
 
 
 | 991 | STDMETHOD(SetFormat) (THIS_ LPBITMAPINFOHEADER lpbi,LPVOID lpBits,int x,int y,int dx,int dy) PURE; | 
 
 
 
 
 | 992 | }; | 
 
 
 
 
 | 993 |  | 
 
 
 
 
 | 994 | #undef PGETFRAME | 
 
 
 
 
 | 995 | typedef IGetFrame *PGETFRAME; | 
 
 
 
 
 | 996 |  | 
 
 
 
 
 | 997 | #define DEFINE_AVIGUID(name,l,w1,w2) DEFINE_GUID(name,l,w1,w2,0xC0,0,0,0,0,0,0,0x46) | 
 
 
 
 
 | 998 |  | 
 
 
 
 
 | 999 | DEFINE_AVIGUID(IID_IAVIFile,0x00020020,0,0); | 
 
 
 
 
 | 1000 | DEFINE_AVIGUID(IID_IAVIStream,0x00020021,0,0); | 
 
 
 
 
 | 1001 | DEFINE_AVIGUID(IID_IAVIStreaming,0x00020022,0,0); | 
 
 
 
 
 | 1002 | DEFINE_AVIGUID(IID_IGetFrame,0x00020023,0,0); | 
 
 
 
 
 | 1003 | DEFINE_AVIGUID(IID_IAVIEditStream,0x00020024,0,0); | 
 
 
 
 
 | 1004 | DEFINE_AVIGUID(IID_IAVIPersistFile,0x00020025,0,0); | 
 
 
 
 
 | 1005 | #if !defined(UNICODE) | 
 
 
 
 
 | 1006 | DEFINE_AVIGUID(CLSID_AVISimpleUnMarshal,0x00020009,0,0); | 
 
 
 
 
 | 1007 | #endif | 
 
 
 
 
 | 1008 |  | 
 
 
 
 
 | 1009 | DEFINE_AVIGUID(CLSID_AVIFile,0x00020000,0,0); | 
 
 
 
 
 | 1010 |  | 
 
 
 
 
 | 1011 | #define AVIFILEHANDLER_CANREAD 0x0001 | 
 
 
 
 
 | 1012 | #define AVIFILEHANDLER_CANWRITE 0x0002 | 
 
 
 
 
 | 1013 | #define AVIFILEHANDLER_CANACCEPTNONRGB 0x0004 | 
 
 
 
 
 | 1014 |  | 
 
 
 
 
 | 1015 | #define AVIFileOpen __MINGW_NAME_AW(AVIFileOpen) | 
 
 
 
 
 | 1016 | #define AVIFileInfo __MINGW_NAME_AW(AVIFileInfo) | 
 
 
 
 
 | 1017 | #define AVIFileCreateStream __MINGW_NAME_AW(AVIFileCreateStream) | 
 
 
 
 
 | 1018 | #define AVIStreamInfo __MINGW_NAME_AW(AVIStreamInfo) | 
 
 
 
 
 | 1019 | #define AVIStreamOpenFromFile __MINGW_NAME_AW(AVIStreamOpenFromFile) | 
 
 
 
 
 | 1020 |  | 
 
 
 
 
 | 1021 | STDAPI_(void) AVIFileInit(void); | 
 
 
 
 
 | 1022 | STDAPI_(void) AVIFileExit(void); | 
 
 
 
 
 | 1023 | STDAPI_(ULONG) AVIFileAddRef (PAVIFILE pfile); | 
 
 
 
 
 | 1024 | STDAPI_(ULONG) AVIFileRelease (PAVIFILE pfile); | 
 
 
 
 
 | 1025 | STDAPI AVIFileOpenA (PAVIFILE *ppfile,LPCSTR szFile,UINT uMode,LPCLSID lpHandler); | 
 
 
 
 
 | 1026 | STDAPI AVIFileOpenW (PAVIFILE *ppfile,LPCWSTR szFile,UINT uMode,LPCLSID lpHandler); | 
 
 
 
 
 | 1027 | STDAPI AVIFileInfoW (PAVIFILE pfile,LPAVIFILEINFOW pfi,LONG lSize); | 
 
 
 
 
 | 1028 | STDAPI AVIFileInfoA (PAVIFILE pfile,LPAVIFILEINFOA pfi,LONG lSize); | 
 
 
 
 
 | 1029 | STDAPI AVIFileGetStream (PAVIFILE pfile,PAVISTREAM *ppavi,DWORD fccType,LONG lParam); | 
 
 
 
 
 | 1030 | STDAPI AVIFileCreateStreamW (PAVIFILE pfile,PAVISTREAM *ppavi,AVISTREAMINFOW *psi); | 
 
 
 
 
 | 1031 | STDAPI AVIFileCreateStreamA (PAVIFILE pfile,PAVISTREAM *ppavi,AVISTREAMINFOA *psi); | 
 
 
 
 
 | 1032 | STDAPI AVIFileWriteData (PAVIFILE pfile,DWORD ckid,LPVOID lpData,LONG cbData); | 
 
 
 
 
 | 1033 | STDAPI AVIFileReadData (PAVIFILE pfile,DWORD ckid,LPVOID lpData,LONG *lpcbData); | 
 
 
 
 
 | 1034 | STDAPI AVIFileEndRecord (PAVIFILE pfile); | 
 
 
 
 
 | 1035 | STDAPI_(ULONG) AVIStreamAddRef (PAVISTREAM pavi); | 
 
 
 
 
 | 1036 | STDAPI_(ULONG) AVIStreamRelease (PAVISTREAM pavi); | 
 
 
 
 
 | 1037 | STDAPI AVIStreamInfoW (PAVISTREAM pavi,LPAVISTREAMINFOW psi,LONG lSize); | 
 
 
 
 
 | 1038 | STDAPI AVIStreamInfoA (PAVISTREAM pavi,LPAVISTREAMINFOA psi,LONG lSize); | 
 
 
 
 
 | 1039 | STDAPI_(LONG) AVIStreamFindSample(PAVISTREAM pavi,LONG lPos,LONG lFlags); | 
 
 
 
 
 | 1040 | STDAPI AVIStreamReadFormat (PAVISTREAM pavi,LONG lPos,LPVOID lpFormat,LONG *lpcbFormat); | 
 
 
 
 
 | 1041 | STDAPI AVIStreamSetFormat (PAVISTREAM pavi,LONG lPos,LPVOID lpFormat,LONG cbFormat); | 
 
 
 
 
 | 1042 | STDAPI AVIStreamReadData (PAVISTREAM pavi,DWORD fcc,LPVOID lp,LONG *lpcb); | 
 
 
 
 
 | 1043 | STDAPI AVIStreamWriteData (PAVISTREAM pavi,DWORD fcc,LPVOID lp,LONG cb); | 
 
 
 
 
 | 1044 | STDAPI AVIStreamRead (PAVISTREAM pavi,LONG lStart,LONG lSamples,LPVOID lpBuffer,LONG cbBuffer,LONG *plBytes,LONG *plSamples); | 
 
 
 
 
 | 1045 | #define AVISTREAMREAD_CONVENIENT (__MSABI_LONG(-1)) | 
 
 
 
 
 | 1046 | STDAPI AVIStreamWrite (PAVISTREAM pavi,LONG lStart,LONG lSamples,LPVOID lpBuffer,LONG cbBuffer,DWORD dwFlags,LONG *plSampWritten,LONG *plBytesWritten); | 
 
 
 
 
 | 1047 | STDAPI_(LONG) AVIStreamStart (PAVISTREAM pavi); | 
 
 
 
 
 | 1048 | STDAPI_(LONG) AVIStreamLength (PAVISTREAM pavi); | 
 
 
 
 
 | 1049 | STDAPI_(LONG) AVIStreamTimeToSample (PAVISTREAM pavi,LONG lTime); | 
 
 
 
 
 | 1050 | STDAPI_(LONG) AVIStreamSampleToTime (PAVISTREAM pavi,LONG lSample); | 
 
 
 
 
 | 1051 | STDAPI AVIStreamBeginStreaming(PAVISTREAM pavi,LONG lStart,LONG lEnd,LONG lRate); | 
 
 
 
 
 | 1052 | STDAPI AVIStreamEndStreaming(PAVISTREAM pavi); | 
 
 
 
 
 | 1053 | STDAPI_(PGETFRAME) AVIStreamGetFrameOpen(PAVISTREAM pavi,LPBITMAPINFOHEADER lpbiWanted); | 
 
 
 
 
 | 1054 | STDAPI_(LPVOID) AVIStreamGetFrame(PGETFRAME pg,LONG lPos); | 
 
 
 
 
 | 1055 | STDAPI AVIStreamGetFrameClose(PGETFRAME pg); | 
 
 
 
 
 | 1056 | STDAPI AVIStreamOpenFromFileA(PAVISTREAM *ppavi,LPCSTR szFile,DWORD fccType,LONG lParam,UINT mode,CLSID *pclsidHandler); | 
 
 
 
 
 | 1057 | STDAPI AVIStreamOpenFromFileW(PAVISTREAM *ppavi,LPCWSTR szFile,DWORD fccType,LONG lParam,UINT mode,CLSID *pclsidHandler); | 
 
 
 
 
 | 1058 | STDAPI AVIStreamCreate(PAVISTREAM *ppavi,LONG lParam1,LONG lParam2,CLSID *pclsidHandler); | 
 
 
 
 
 | 1059 |  | 
 
 
 
 
 | 1060 | #define FIND_DIR __MSABI_LONG(0x0000000F) | 
 
 
 
 
 | 1061 | #define FIND_NEXT __MSABI_LONG(0x00000001) | 
 
 
 
 
 | 1062 | #define FIND_PREV __MSABI_LONG(0x00000004) | 
 
 
 
 
 | 1063 | #define FIND_FROM_START __MSABI_LONG(0x00000008) | 
 
 
 
 
 | 1064 |  | 
 
 
 
 
 | 1065 | #define FIND_TYPE __MSABI_LONG(0x000000F0) | 
 
 
 
 
 | 1066 | #define FIND_KEY __MSABI_LONG(0x00000010) | 
 
 
 
 
 | 1067 | #define FIND_ANY __MSABI_LONG(0x00000020) | 
 
 
 
 
 | 1068 | #define FIND_FORMAT __MSABI_LONG(0x00000040) | 
 
 
 
 
 | 1069 |  | 
 
 
 
 
 | 1070 | #define FIND_RET __MSABI_LONG(0x0000F000) | 
 
 
 
 
 | 1071 | #define FIND_POS __MSABI_LONG(0x00000000) | 
 
 
 
 
 | 1072 | #define FIND_LENGTH __MSABI_LONG(0x00001000) | 
 
 
 
 
 | 1073 | #define FIND_OFFSET __MSABI_LONG(0x00002000) | 
 
 
 
 
 | 1074 | #define FIND_SIZE __MSABI_LONG(0x00003000) | 
 
 
 
 
 | 1075 | #define FIND_INDEX __MSABI_LONG(0x00004000) | 
 
 
 
 
 | 1076 |  | 
 
 
 
 
 | 1077 | #define AVIStreamFindKeyFrame AVIStreamFindSample | 
 
 
 
 
 | 1078 | #define FindKeyFrame FindSample | 
 
 
 
 
 | 1079 |  | 
 
 
 
 
 | 1080 | #define AVIStreamClose AVIStreamRelease | 
 
 
 
 
 | 1081 | #define AVIFileClose AVIFileRelease | 
 
 
 
 
 | 1082 | #define AVIStreamInit AVIFileInit | 
 
 
 
 
 | 1083 | #define AVIStreamExit AVIFileExit | 
 
 
 
 
 | 1084 |  | 
 
 
 
 
 | 1085 | #define SEARCH_NEAREST FIND_PREV | 
 
 
 
 
 | 1086 | #define SEARCH_BACKWARD FIND_PREV | 
 
 
 
 
 | 1087 | #define SEARCH_FORWARD FIND_NEXT | 
 
 
 
 
 | 1088 | #define SEARCH_KEY FIND_KEY | 
 
 
 
 
 | 1089 | #define SEARCH_ANY FIND_ANY | 
 
 
 
 
 | 1090 |  | 
 
 
 
 
 | 1091 | #define AVIStreamSampleToSample(pavi1,pavi2,l) AVIStreamTimeToSample(pavi1,AVIStreamSampleToTime(pavi2,l)) | 
 
 
 
 
 | 1092 | #define AVIStreamNextSample(pavi,l) AVIStreamFindSample(pavi,l+1,FIND_NEXT|FIND_ANY) | 
 
 
 
 
 | 1093 | #define AVIStreamPrevSample(pavi,l) AVIStreamFindSample(pavi,l-1,FIND_PREV|FIND_ANY) | 
 
 
 
 
 | 1094 | #define AVIStreamNearestSample(pavi,l) AVIStreamFindSample(pavi,l,FIND_PREV|FIND_ANY) | 
 
 
 
 
 | 1095 | #define AVIStreamNextKeyFrame(pavi,l) AVIStreamFindSample(pavi,l+1,FIND_NEXT|FIND_KEY) | 
 
 
 
 
 | 1096 | #define AVIStreamPrevKeyFrame(pavi,l) AVIStreamFindSample(pavi,l-1,FIND_PREV|FIND_KEY) | 
 
 
 
 
 | 1097 | #define AVIStreamNearestKeyFrame(pavi,l) AVIStreamFindSample(pavi,l,FIND_PREV|FIND_KEY) | 
 
 
 
 
 | 1098 | #define AVIStreamIsKeyFrame(pavi,l) (AVIStreamNearestKeyFrame(pavi,l)==l) | 
 
 
 
 
 | 1099 | #define AVIStreamPrevSampleTime(pavi,t) AVIStreamSampleToTime(pavi,AVIStreamPrevSample(pavi,AVIStreamTimeToSample(pavi,t))) | 
 
 
 
 
 | 1100 | #define AVIStreamNextSampleTime(pavi,t) AVIStreamSampleToTime(pavi,AVIStreamNextSample(pavi,AVIStreamTimeToSample(pavi,t))) | 
 
 
 
 
 | 1101 | #define AVIStreamNearestSampleTime(pavi,t) AVIStreamSampleToTime(pavi,AVIStreamNearestSample(pavi,AVIStreamTimeToSample(pavi,t))) | 
 
 
 
 
 | 1102 | #define AVIStreamNextKeyFrameTime(pavi,t) AVIStreamSampleToTime(pavi,AVIStreamNextKeyFrame(pavi,AVIStreamTimeToSample(pavi,t))) | 
 
 
 
 
 | 1103 | #define AVIStreamPrevKeyFrameTime(pavi,t) AVIStreamSampleToTime(pavi,AVIStreamPrevKeyFrame(pavi,AVIStreamTimeToSample(pavi,t))) | 
 
 
 
 
 | 1104 | #define AVIStreamNearestKeyFrameTime(pavi,t) AVIStreamSampleToTime(pavi,AVIStreamNearestKeyFrame(pavi,AVIStreamTimeToSample(pavi,t))) | 
 
 
 
 
 | 1105 | #define AVIStreamStartTime(pavi) AVIStreamSampleToTime(pavi,AVIStreamStart(pavi)) | 
 
 
 
 
 | 1106 | #define AVIStreamLengthTime(pavi) AVIStreamSampleToTime(pavi,AVIStreamLength(pavi)) | 
 
 
 
 
 | 1107 | #define AVIStreamEnd(pavi) (AVIStreamStart(pavi) + AVIStreamLength(pavi)) | 
 
 
 
 
 | 1108 | #define AVIStreamEndTime(pavi) AVIStreamSampleToTime(pavi,AVIStreamEnd(pavi)) | 
 
 
 
 
 | 1109 | #define AVIStreamSampleSize(pavi,lPos,plSize) AVIStreamRead(pavi,lPos,1,NULL,(LONG)0,plSize,NULL) | 
 
 
 
 
 | 1110 | #define AVIStreamFormatSize(pavi,lPos,plSize) AVIStreamReadFormat(pavi,lPos,NULL,plSize) | 
 
 
 
 
 | 1111 | #define AVIStreamDataSize(pavi,fcc,plSize) AVIStreamReadData(pavi,fcc,NULL,plSize) | 
 
 
 
 
 | 1112 |  | 
 
 
 
 
 | 1113 | #define AVStreamNextKeyFrame(pavi,pos) AVIStreamFindSample(pavi, pos + 1, FIND_NEXT | FIND_KEY) | 
 
 
 
 
 | 1114 | #define AVStreamPrevKeyFrame(pavi,pos) AVIStreamFindSample(pavi, pos - 1, FIND_NEXT | FIND_KEY) | 
 
 
 
 
 | 1115 |  | 
 
 
 
 
 | 1116 | #ifndef comptypeDIB | 
 
 
 
 
 | 1117 | #define comptypeDIB mmioFOURCC('D','I','B',' ') | 
 
 
 
 
 | 1118 | #endif | 
 
 
 
 
 | 1119 |  | 
 
 
 
 
 | 1120 | #define AVISave __MINGW_NAME_AW(AVISave) | 
 
 
 
 
 | 1121 | #define AVISaveV __MINGW_NAME_AW(AVISaveV) | 
 
 
 
 
 | 1122 | #define AVIBuildFilter __MINGW_NAME_AW(AVIBuildFilter) | 
 
 
 
 
 | 1123 | #define EditStreamSetInfo __MINGW_NAME_AW(EditStreamSetInfo) | 
 
 
 
 
 | 1124 | #define EditStreamSetName __MINGW_NAME_AW(EditStreamSetName) | 
 
 
 
 
 | 1125 |  | 
 
 
 
 
 | 1126 | STDAPI AVIMakeCompressedStream(PAVISTREAM *ppsCompressed,PAVISTREAM ppsSource,AVICOMPRESSOPTIONS *lpOptions,CLSID *pclsidHandler); | 
 
 
 
 
 | 1127 | EXTERN_C HRESULT CDECL AVISaveA (LPCSTR szFile,CLSID *pclsidHandler,AVISAVECALLBACK lpfnCallback,int nStreams,PAVISTREAM pfile,LPAVICOMPRESSOPTIONS lpOptions,...); | 
 
 
 
 
 | 1128 | STDAPI AVISaveVA(LPCSTR szFile,CLSID *pclsidHandler,AVISAVECALLBACK lpfnCallback,int nStreams,PAVISTREAM *ppavi,LPAVICOMPRESSOPTIONS *plpOptions); | 
 
 
 
 
 | 1129 | EXTERN_C HRESULT CDECL AVISaveW (LPCWSTR szFile,CLSID *pclsidHandler,AVISAVECALLBACK lpfnCallback,int nStreams,PAVISTREAM pfile,LPAVICOMPRESSOPTIONS lpOptions,...); | 
 
 
 
 
 | 1130 | STDAPI AVISaveVW(LPCWSTR szFile,CLSID *pclsidHandler,AVISAVECALLBACK lpfnCallback,int nStreams,PAVISTREAM *ppavi,LPAVICOMPRESSOPTIONS *plpOptions); | 
 
 
 
 
 | 1131 | STDAPI_(INT_PTR) AVISaveOptions(HWND hwnd,UINT uiFlags,int nStreams,PAVISTREAM *ppavi,LPAVICOMPRESSOPTIONS *plpOptions); | 
 
 
 
 
 | 1132 | STDAPI AVISaveOptionsFree(int nStreams,LPAVICOMPRESSOPTIONS *plpOptions); | 
 
 
 
 
 | 1133 | STDAPI AVIBuildFilterW(LPWSTR lpszFilter,LONG cbFilter,WINBOOL fSaving); | 
 
 
 
 
 | 1134 | STDAPI AVIBuildFilterA(LPSTR lpszFilter,LONG cbFilter,WINBOOL fSaving); | 
 
 
 
 
 | 1135 | STDAPI AVIMakeFileFromStreams(PAVIFILE *ppfile,int nStreams,PAVISTREAM *papStreams); | 
 
 
 
 
 | 1136 | STDAPI AVIMakeStreamFromClipboard(UINT cfFormat,HANDLE hGlobal,PAVISTREAM *ppstream); | 
 
 
 
 
 | 1137 | STDAPI AVIPutFileOnClipboard(PAVIFILE pf); | 
 
 
 
 
 | 1138 | STDAPI AVIGetFromClipboard(PAVIFILE *lppf); | 
 
 
 
 
 | 1139 | STDAPI AVIClearClipboard(void); | 
 
 
 
 
 | 1140 | STDAPI CreateEditableStream(PAVISTREAM *ppsEditable,PAVISTREAM psSource); | 
 
 
 
 
 | 1141 | STDAPI EditStreamCut(PAVISTREAM pavi,LONG *plStart,LONG *plLength,PAVISTREAM *ppResult); | 
 
 
 
 
 | 1142 | STDAPI EditStreamCopy(PAVISTREAM pavi,LONG *plStart,LONG *plLength,PAVISTREAM *ppResult); | 
 
 
 
 
 | 1143 | STDAPI EditStreamPaste(PAVISTREAM pavi,LONG *plPos,LONG *plLength,PAVISTREAM pstream,LONG lStart,LONG lEnd); | 
 
 
 
 
 | 1144 | STDAPI EditStreamClone(PAVISTREAM pavi,PAVISTREAM *ppResult); | 
 
 
 
 
 | 1145 | STDAPI EditStreamSetNameA(PAVISTREAM pavi,LPCSTR lpszName); | 
 
 
 
 
 | 1146 | STDAPI EditStreamSetNameW(PAVISTREAM pavi,LPCWSTR lpszName); | 
 
 
 
 
 | 1147 | STDAPI EditStreamSetInfoW(PAVISTREAM pavi,LPAVISTREAMINFOW lpInfo,LONG cbInfo); | 
 
 
 
 
 | 1148 | STDAPI EditStreamSetInfoA(PAVISTREAM pavi,LPAVISTREAMINFOA lpInfo,LONG cbInfo); | 
 
 
 
 
 | 1149 |  | 
 
 
 
 
 | 1150 | #ifndef AVIERR_OK | 
 
 
 
 
 | 1151 | #define AVIERR_OK __MSABI_LONG(0) | 
 
 
 
 
 | 1152 |  | 
 
 
 
 
 | 1153 | #define MAKE_AVIERR(error) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x4000 + error) | 
 
 
 
 
 | 1154 |  | 
 
 
 
 
 | 1155 | #define AVIERR_UNSUPPORTED MAKE_AVIERR(101) | 
 
 
 
 
 | 1156 | #define AVIERR_BADFORMAT MAKE_AVIERR(102) | 
 
 
 
 
 | 1157 | #define AVIERR_MEMORY MAKE_AVIERR(103) | 
 
 
 
 
 | 1158 | #define AVIERR_INTERNAL MAKE_AVIERR(104) | 
 
 
 
 
 | 1159 | #define AVIERR_BADFLAGS MAKE_AVIERR(105) | 
 
 
 
 
 | 1160 | #define AVIERR_BADPARAM MAKE_AVIERR(106) | 
 
 
 
 
 | 1161 | #define AVIERR_BADSIZE MAKE_AVIERR(107) | 
 
 
 
 
 | 1162 | #define AVIERR_BADHANDLE MAKE_AVIERR(108) | 
 
 
 
 
 | 1163 | #define AVIERR_FILEREAD MAKE_AVIERR(109) | 
 
 
 
 
 | 1164 | #define AVIERR_FILEWRITE MAKE_AVIERR(110) | 
 
 
 
 
 | 1165 | #define AVIERR_FILEOPEN MAKE_AVIERR(111) | 
 
 
 
 
 | 1166 | #define AVIERR_COMPRESSOR MAKE_AVIERR(112) | 
 
 
 
 
 | 1167 | #define AVIERR_NOCOMPRESSOR MAKE_AVIERR(113) | 
 
 
 
 
 | 1168 | #define AVIERR_READONLY MAKE_AVIERR(114) | 
 
 
 
 
 | 1169 | #define AVIERR_NODATA MAKE_AVIERR(115) | 
 
 
 
 
 | 1170 | #define AVIERR_BUFFERTOOSMALL MAKE_AVIERR(116) | 
 
 
 
 
 | 1171 | #define AVIERR_CANTCOMPRESS MAKE_AVIERR(117) | 
 
 
 
 
 | 1172 | #define AVIERR_USERABORT MAKE_AVIERR(198) | 
 
 
 
 
 | 1173 | #define AVIERR_ERROR MAKE_AVIERR(199) | 
 
 
 
 
 | 1174 | #endif | 
 
 
 
 
 | 1175 | #endif | 
 
 
 
 
 | 1176 |  | 
 
 
 
 
 | 1177 | #ifndef NOMCIWND | 
 
 
 
 
 | 1178 |  | 
 
 
 
 
 | 1179 | #ifdef __cplusplus | 
 
 
 
 
 | 1180 | #define MCIWndSM ::SendMessage | 
 
 
 
 
 | 1181 | #else | 
 
 
 
 
 | 1182 | #define MCIWndSM SendMessage | 
 
 
 
 
 | 1183 | #endif | 
 
 
 
 
 | 1184 |  | 
 
 
 
 
 | 1185 | #define MCIWND_WINDOW_CLASS TEXT("MCIWndClass") | 
 
 
 
 
 | 1186 |  | 
 
 
 
 
 | 1187 | #define MCIWndCreate __MINGW_NAME_AW(MCIWndCreate) | 
 
 
 
 
 | 1188 |  | 
 
 
 
 
 | 1189 | HWND WINAPIV MCIWndCreateA(HWND hwndParent,HINSTANCE hInstance,DWORD dwStyle,LPCSTR szFile); | 
 
 
 
 
 | 1190 | HWND WINAPIV MCIWndCreateW(HWND hwndParent,HINSTANCE hInstance,DWORD dwStyle,LPCWSTR szFile); | 
 
 
 
 
 | 1191 | WINBOOL WINAPIV MCIWndRegisterClass(void); | 
 
 
 
 
 | 1192 |  | 
 
 
 
 
 | 1193 | #define MCIWNDOPENF_NEW 0x0001 | 
 
 
 
 
 | 1194 |  | 
 
 
 
 
 | 1195 | #define MCIWNDF_NOAUTOSIZEWINDOW 0x0001 | 
 
 
 
 
 | 1196 | #define MCIWNDF_NOPLAYBAR 0x0002 | 
 
 
 
 
 | 1197 | #define MCIWNDF_NOAUTOSIZEMOVIE 0x0004 | 
 
 
 
 
 | 1198 | #define MCIWNDF_NOMENU 0x0008 | 
 
 
 
 
 | 1199 | #define MCIWNDF_SHOWNAME 0x0010 | 
 
 
 
 
 | 1200 | #define MCIWNDF_SHOWPOS 0x0020 | 
 
 
 
 
 | 1201 | #define MCIWNDF_SHOWMODE 0x0040 | 
 
 
 
 
 | 1202 | #define MCIWNDF_SHOWALL 0x0070 | 
 
 
 
 
 | 1203 |  | 
 
 
 
 
 | 1204 | #define MCIWNDF_NOTIFYMODE 0x0100 | 
 
 
 
 
 | 1205 | #define MCIWNDF_NOTIFYPOS 0x0200 | 
 
 
 
 
 | 1206 | #define MCIWNDF_NOTIFYSIZE 0x0400 | 
 
 
 
 
 | 1207 | #define MCIWNDF_NOTIFYERROR 0x1000 | 
 
 
 
 
 | 1208 | #define MCIWNDF_NOTIFYALL 0x1F00 | 
 
 
 
 
 | 1209 |  | 
 
 
 
 
 | 1210 | #define MCIWNDF_NOTIFYANSI 0x0080 | 
 
 
 
 
 | 1211 |  | 
 
 
 
 
 | 1212 | #define MCIWNDF_NOTIFYMEDIAA 0x0880 | 
 
 
 
 
 | 1213 | #define MCIWNDF_NOTIFYMEDIAW 0x0800 | 
 
 
 
 
 | 1214 |  | 
 
 
 
 
 | 1215 | #define MCIWNDF_NOTIFYMEDIA __MINGW_NAME_AW(MCIWNDF_NOTIFYMEDIA) | 
 
 
 
 
 | 1216 |  | 
 
 
 
 
 | 1217 | #define MCIWNDF_RECORD 0x2000 | 
 
 
 
 
 | 1218 | #define MCIWNDF_NOERRORDLG 0x4000 | 
 
 
 
 
 | 1219 | #define MCIWNDF_NOOPEN 0x8000 | 
 
 
 
 
 | 1220 |  | 
 
 
 
 
 | 1221 | #define MCIWndCanPlay(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_CAN_PLAY,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1222 | #define MCIWndCanRecord(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_CAN_RECORD,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1223 | #define MCIWndCanSave(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_CAN_SAVE,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1224 | #define MCIWndCanWindow(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_CAN_WINDOW,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1225 | #define MCIWndCanEject(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_CAN_EJECT,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1226 | #define MCIWndCanConfig(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_CAN_CONFIG,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1227 | #define MCIWndPaletteKick(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_PALETTEKICK,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1228 |  | 
 
 
 
 
 | 1229 | #define MCIWndSave(hwnd,szFile) (LONG)MCIWndSM(hwnd,MCI_SAVE,(WPARAM)0,(LPARAM)(LPVOID)(szFile)) | 
 
 
 
 
 | 1230 | #define MCIWndSaveDialog(hwnd) MCIWndSave(hwnd,-1) | 
 
 
 
 
 | 1231 |  | 
 
 
 
 
 | 1232 | #define MCIWndNew(hwnd,lp) (LONG)MCIWndSM(hwnd,MCIWNDM_NEW,(WPARAM)0,(LPARAM)(LPVOID)(lp)) | 
 
 
 
 
 | 1233 |  | 
 
 
 
 
 | 1234 | #define MCIWndRecord(hwnd) (LONG)MCIWndSM(hwnd,MCI_RECORD,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1235 | #define MCIWndOpen(hwnd,sz,f) (LONG)MCIWndSM(hwnd,MCIWNDM_OPEN,(WPARAM)(UINT)(f),(LPARAM)(LPVOID)(sz)) | 
 
 
 
 
 | 1236 | #define MCIWndOpenDialog(hwnd) MCIWndOpen(hwnd,-1,0) | 
 
 
 
 
 | 1237 | #define MCIWndClose(hwnd) (LONG)MCIWndSM(hwnd,MCI_CLOSE,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1238 | #define MCIWndPlay(hwnd) (LONG)MCIWndSM(hwnd,MCI_PLAY,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1239 | #define MCIWndStop(hwnd) (LONG)MCIWndSM(hwnd,MCI_STOP,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1240 | #define MCIWndPause(hwnd) (LONG)MCIWndSM(hwnd,MCI_PAUSE,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1241 | #define MCIWndResume(hwnd) (LONG)MCIWndSM(hwnd,MCI_RESUME,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1242 | #define MCIWndSeek(hwnd,lPos) (LONG)MCIWndSM(hwnd,MCI_SEEK,(WPARAM)0,(LPARAM)(LONG)(lPos)) | 
 
 
 
 
 | 1243 | #define MCIWndEject(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_EJECT,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1244 |  | 
 
 
 
 
 | 1245 | #define MCIWndHome(hwnd) MCIWndSeek(hwnd,MCIWND_START) | 
 
 
 
 
 | 1246 | #define MCIWndEnd(hwnd) MCIWndSeek(hwnd,MCIWND_END) | 
 
 
 
 
 | 1247 |  | 
 
 
 
 
 | 1248 | #define MCIWndGetSource(hwnd,prc) (LONG)MCIWndSM(hwnd,MCIWNDM_GET_SOURCE,(WPARAM)0,(LPARAM)(LPRECT)(prc)) | 
 
 
 
 
 | 1249 | #define MCIWndPutSource(hwnd,prc) (LONG)MCIWndSM(hwnd,MCIWNDM_PUT_SOURCE,(WPARAM)0,(LPARAM)(LPRECT)(prc)) | 
 
 
 
 
 | 1250 |  | 
 
 
 
 
 | 1251 | #define MCIWndGetDest(hwnd,prc) (LONG)MCIWndSM(hwnd,MCIWNDM_GET_DEST,(WPARAM)0,(LPARAM)(LPRECT)(prc)) | 
 
 
 
 
 | 1252 | #define MCIWndPutDest(hwnd,prc) (LONG)MCIWndSM(hwnd,MCIWNDM_PUT_DEST,(WPARAM)0,(LPARAM)(LPRECT)(prc)) | 
 
 
 
 
 | 1253 |  | 
 
 
 
 
 | 1254 | #define MCIWndPlayReverse(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_PLAYREVERSE,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1255 | #define MCIWndPlayFrom(hwnd,lPos) (LONG)MCIWndSM(hwnd,MCIWNDM_PLAYFROM,(WPARAM)0,(LPARAM)(LONG)(lPos)) | 
 
 
 
 
 | 1256 | #define MCIWndPlayTo(hwnd,lPos) (LONG)MCIWndSM(hwnd,MCIWNDM_PLAYTO,(WPARAM)0,(LPARAM)(LONG)(lPos)) | 
 
 
 
 
 | 1257 | #define MCIWndPlayFromTo(hwnd,lStart,lEnd) (MCIWndSeek(hwnd,lStart),MCIWndPlayTo(hwnd,lEnd)) | 
 
 
 
 
 | 1258 |  | 
 
 
 
 
 | 1259 | #define MCIWndGetDeviceID(hwnd) (UINT)MCIWndSM(hwnd,MCIWNDM_GETDEVICEID,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1260 | #define MCIWndGetAlias(hwnd) (UINT)MCIWndSM(hwnd,MCIWNDM_GETALIAS,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1261 | #define MCIWndGetMode(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_GETMODE,(WPARAM)(UINT)(len),(LPARAM)(LPTSTR)(lp)) | 
 
 
 
 
 | 1262 | #define MCIWndGetPosition(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_GETPOSITION,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1263 | #define MCIWndGetPositionString(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_GETPOSITION,(WPARAM)(UINT)(len),(LPARAM)(LPTSTR)(lp)) | 
 
 
 
 
 | 1264 | #define MCIWndGetStart(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_GETSTART,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1265 | #define MCIWndGetLength(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_GETLENGTH,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1266 | #define MCIWndGetEnd(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_GETEND,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1267 |  | 
 
 
 
 
 | 1268 | #define MCIWndStep(hwnd,n) (LONG)MCIWndSM(hwnd,MCI_STEP,(WPARAM)0,(LPARAM)(__LONG32)(n)) | 
 
 
 
 
 | 1269 |  | 
 
 
 
 
 | 1270 | #define MCIWndDestroy(hwnd) (VOID)MCIWndSM(hwnd,WM_CLOSE,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1271 | #define MCIWndSetZoom(hwnd,iZoom) (VOID)MCIWndSM(hwnd,MCIWNDM_SETZOOM,(WPARAM)0,(LPARAM)(UINT)(iZoom)) | 
 
 
 
 
 | 1272 | #define MCIWndGetZoom(hwnd) (UINT)MCIWndSM(hwnd,MCIWNDM_GETZOOM,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1273 | #define MCIWndSetVolume(hwnd,iVol) (LONG)MCIWndSM(hwnd,MCIWNDM_SETVOLUME,(WPARAM)0,(LPARAM)(UINT)(iVol)) | 
 
 
 
 
 | 1274 | #define MCIWndGetVolume(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_GETVOLUME,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1275 | #define MCIWndSetSpeed(hwnd,iSpeed) (LONG)MCIWndSM(hwnd,MCIWNDM_SETSPEED,(WPARAM)0,(LPARAM)(UINT)(iSpeed)) | 
 
 
 
 
 | 1276 | #define MCIWndGetSpeed(hwnd) (LONG)MCIWndSM(hwnd,MCIWNDM_GETSPEED,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1277 | #define MCIWndSetTimeFormat(hwnd,lp) (LONG)MCIWndSM(hwnd,MCIWNDM_SETTIMEFORMAT,(WPARAM)0,(LPARAM)(LPTSTR)(lp)) | 
 
 
 
 
 | 1278 | #define MCIWndGetTimeFormat(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_GETTIMEFORMAT,(WPARAM)(UINT)(len),(LPARAM)(LPTSTR)(lp)) | 
 
 
 
 
 | 1279 | #define MCIWndValidateMedia(hwnd) (VOID)MCIWndSM(hwnd,MCIWNDM_VALIDATEMEDIA,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1280 |  | 
 
 
 
 
 | 1281 | #define MCIWndSetRepeat(hwnd,f) (void)MCIWndSM(hwnd,MCIWNDM_SETREPEAT,(WPARAM)0,(LPARAM)(WINBOOL)(f)) | 
 
 
 
 
 | 1282 | #define MCIWndGetRepeat(hwnd) (WINBOOL)MCIWndSM(hwnd,MCIWNDM_GETREPEAT,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1283 |  | 
 
 
 
 
 | 1284 | #define MCIWndUseFrames(hwnd) MCIWndSetTimeFormat(hwnd,TEXT("frames")) | 
 
 
 
 
 | 1285 | #define MCIWndUseTime(hwnd) MCIWndSetTimeFormat(hwnd,TEXT("ms")) | 
 
 
 
 
 | 1286 |  | 
 
 
 
 
 | 1287 | #define MCIWndSetActiveTimer(hwnd,active) (VOID)MCIWndSM(hwnd,MCIWNDM_SETACTIVETIMER,(WPARAM)(UINT)(active),(LPARAM)0) | 
 
 
 
 
 | 1288 | #define MCIWndSetInactiveTimer(hwnd,inactive) (VOID)MCIWndSM(hwnd,MCIWNDM_SETINACTIVETIMER,(WPARAM)(UINT)(inactive),(LPARAM)0) | 
 
 
 
 
 | 1289 | #define MCIWndSetTimers(hwnd,active,inactive) (VOID)MCIWndSM(hwnd,MCIWNDM_SETTIMERS,(WPARAM)(UINT)(active),(LPARAM)(UINT)(inactive)) | 
 
 
 
 
 | 1290 | #define MCIWndGetActiveTimer(hwnd) (UINT)MCIWndSM(hwnd,MCIWNDM_GETACTIVETIMER,(WPARAM)0,(LPARAM)0); | 
 
 
 
 
 | 1291 | #define MCIWndGetInactiveTimer(hwnd) (UINT)MCIWndSM(hwnd,MCIWNDM_GETINACTIVETIMER,(WPARAM)0,(LPARAM)0); | 
 
 
 
 
 | 1292 |  | 
 
 
 
 
 | 1293 | #define MCIWndRealize(hwnd,fBkgnd) (LONG)MCIWndSM(hwnd,MCIWNDM_REALIZE,(WPARAM)(WINBOOL)(fBkgnd),(LPARAM)0) | 
 
 
 
 
 | 1294 |  | 
 
 
 
 
 | 1295 | #define MCIWndSendString(hwnd,sz) (LONG)MCIWndSM(hwnd,MCIWNDM_SENDSTRING,(WPARAM)0,(LPARAM)(LPTSTR)(sz)) | 
 
 
 
 
 | 1296 | #define MCIWndReturnString(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_RETURNSTRING,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp)) | 
 
 
 
 
 | 1297 | #define MCIWndGetError(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_GETERROR,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp)) | 
 
 
 
 
 | 1298 |  | 
 
 
 
 
 | 1299 | #define MCIWndGetPalette(hwnd) (HPALETTE)MCIWndSM(hwnd,MCIWNDM_GETPALETTE,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1300 | #define MCIWndSetPalette(hwnd,hpal) (LONG)MCIWndSM(hwnd,MCIWNDM_SETPALETTE,(WPARAM)(HPALETTE)(hpal),(LPARAM)0) | 
 
 
 
 
 | 1301 |  | 
 
 
 
 
 | 1302 | #define MCIWndGetFileName(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_GETFILENAME,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp)) | 
 
 
 
 
 | 1303 | #define MCIWndGetDevice(hwnd,lp,len) (LONG)MCIWndSM(hwnd,MCIWNDM_GETDEVICE,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp)) | 
 
 
 
 
 | 1304 |  | 
 
 
 
 
 | 1305 | #define MCIWndGetStyles(hwnd) (UINT)MCIWndSM(hwnd,MCIWNDM_GETSTYLES,(WPARAM)0,(LPARAM)0) | 
 
 
 
 
 | 1306 | #define MCIWndChangeStyles(hwnd,mask,value) (LONG)MCIWndSM(hwnd,MCIWNDM_CHANGESTYLES,(WPARAM)(UINT)(mask),(LPARAM)(LONG)(value)) | 
 
 
 
 
 | 1307 |  | 
 
 
 
 
 | 1308 | #define MCIWndOpenInterface(hwnd,pUnk) (LONG)MCIWndSM(hwnd,MCIWNDM_OPENINTERFACE,(WPARAM)0,(LPARAM)(LPUNKNOWN)(pUnk)) | 
 
 
 
 
 | 1309 |  | 
 
 
 
 
 | 1310 | #define MCIWndSetOwner(hwnd,hwndP) (LONG)MCIWndSM(hwnd,MCIWNDM_SETOWNER,(WPARAM)(hwndP),(LPARAM)0) | 
 
 
 
 
 | 1311 |  | 
 
 
 
 
 | 1312 | #define MCIWNDM_GETDEVICEID (WM_USER + 100) | 
 
 
 
 
 | 1313 | #define MCIWNDM_GETSTART (WM_USER + 103) | 
 
 
 
 
 | 1314 | #define MCIWNDM_GETLENGTH (WM_USER + 104) | 
 
 
 
 
 | 1315 | #define MCIWNDM_GETEND (WM_USER + 105) | 
 
 
 
 
 | 1316 | #define MCIWNDM_EJECT (WM_USER + 107) | 
 
 
 
 
 | 1317 | #define MCIWNDM_SETZOOM (WM_USER + 108) | 
 
 
 
 
 | 1318 | #define MCIWNDM_GETZOOM (WM_USER + 109) | 
 
 
 
 
 | 1319 | #define MCIWNDM_SETVOLUME (WM_USER + 110) | 
 
 
 
 
 | 1320 | #define MCIWNDM_GETVOLUME (WM_USER + 111) | 
 
 
 
 
 | 1321 | #define MCIWNDM_SETSPEED (WM_USER + 112) | 
 
 
 
 
 | 1322 | #define MCIWNDM_GETSPEED (WM_USER + 113) | 
 
 
 
 
 | 1323 | #define MCIWNDM_SETREPEAT (WM_USER + 114) | 
 
 
 
 
 | 1324 | #define MCIWNDM_GETREPEAT (WM_USER + 115) | 
 
 
 
 
 | 1325 | #define MCIWNDM_REALIZE (WM_USER + 118) | 
 
 
 
 
 | 1326 | #define MCIWNDM_VALIDATEMEDIA (WM_USER + 121) | 
 
 
 
 
 | 1327 | #define MCIWNDM_PLAYFROM (WM_USER + 122) | 
 
 
 
 
 | 1328 | #define MCIWNDM_PLAYTO (WM_USER + 123) | 
 
 
 
 
 | 1329 | #define MCIWNDM_GETPALETTE (WM_USER + 126) | 
 
 
 
 
 | 1330 | #define MCIWNDM_SETPALETTE (WM_USER + 127) | 
 
 
 
 
 | 1331 | #define MCIWNDM_SETTIMERS (WM_USER + 129) | 
 
 
 
 
 | 1332 | #define MCIWNDM_SETACTIVETIMER (WM_USER + 130) | 
 
 
 
 
 | 1333 | #define MCIWNDM_SETINACTIVETIMER (WM_USER + 131) | 
 
 
 
 
 | 1334 | #define MCIWNDM_GETACTIVETIMER (WM_USER + 132) | 
 
 
 
 
 | 1335 | #define MCIWNDM_GETINACTIVETIMER (WM_USER + 133) | 
 
 
 
 
 | 1336 | #define MCIWNDM_CHANGESTYLES (WM_USER + 135) | 
 
 
 
 
 | 1337 | #define MCIWNDM_GETSTYLES (WM_USER + 136) | 
 
 
 
 
 | 1338 | #define MCIWNDM_GETALIAS (WM_USER + 137) | 
 
 
 
 
 | 1339 | #define MCIWNDM_PLAYREVERSE (WM_USER + 139) | 
 
 
 
 
 | 1340 | #define MCIWNDM_GET_SOURCE (WM_USER + 140) | 
 
 
 
 
 | 1341 | #define MCIWNDM_PUT_SOURCE (WM_USER + 141) | 
 
 
 
 
 | 1342 | #define MCIWNDM_GET_DEST (WM_USER + 142) | 
 
 
 
 
 | 1343 | #define MCIWNDM_PUT_DEST (WM_USER + 143) | 
 
 
 
 
 | 1344 | #define MCIWNDM_CAN_PLAY (WM_USER + 144) | 
 
 
 
 
 | 1345 | #define MCIWNDM_CAN_WINDOW (WM_USER + 145) | 
 
 
 
 
 | 1346 | #define MCIWNDM_CAN_RECORD (WM_USER + 146) | 
 
 
 
 
 | 1347 | #define MCIWNDM_CAN_SAVE (WM_USER + 147) | 
 
 
 
 
 | 1348 | #define MCIWNDM_CAN_EJECT (WM_USER + 148) | 
 
 
 
 
 | 1349 | #define MCIWNDM_CAN_CONFIG (WM_USER + 149) | 
 
 
 
 
 | 1350 | #define MCIWNDM_PALETTEKICK (WM_USER + 150) | 
 
 
 
 
 | 1351 | #define MCIWNDM_OPENINTERFACE (WM_USER + 151) | 
 
 
 
 
 | 1352 | #define MCIWNDM_SETOWNER (WM_USER + 152) | 
 
 
 
 
 | 1353 |  | 
 
 
 
 
 | 1354 | #define MCIWNDM_SENDSTRINGA (WM_USER + 101) | 
 
 
 
 
 | 1355 | #define MCIWNDM_GETPOSITIONA (WM_USER + 102) | 
 
 
 
 
 | 1356 | #define MCIWNDM_GETMODEA (WM_USER + 106) | 
 
 
 
 
 | 1357 | #define MCIWNDM_SETTIMEFORMATA (WM_USER + 119) | 
 
 
 
 
 | 1358 | #define MCIWNDM_GETTIMEFORMATA (WM_USER + 120) | 
 
 
 
 
 | 1359 | #define MCIWNDM_GETFILENAMEA (WM_USER + 124) | 
 
 
 
 
 | 1360 | #define MCIWNDM_GETDEVICEA (WM_USER + 125) | 
 
 
 
 
 | 1361 | #define MCIWNDM_GETERRORA (WM_USER + 128) | 
 
 
 
 
 | 1362 | #define MCIWNDM_NEWA (WM_USER + 134) | 
 
 
 
 
 | 1363 | #define MCIWNDM_RETURNSTRINGA (WM_USER + 138) | 
 
 
 
 
 | 1364 | #define MCIWNDM_OPENA (WM_USER + 153) | 
 
 
 
 
 | 1365 |  | 
 
 
 
 
 | 1366 | #define MCIWNDM_SENDSTRINGW (WM_USER + 201) | 
 
 
 
 
 | 1367 | #define MCIWNDM_GETPOSITIONW (WM_USER + 202) | 
 
 
 
 
 | 1368 | #define MCIWNDM_GETMODEW (WM_USER + 206) | 
 
 
 
 
 | 1369 | #define MCIWNDM_SETTIMEFORMATW (WM_USER + 219) | 
 
 
 
 
 | 1370 | #define MCIWNDM_GETTIMEFORMATW (WM_USER + 220) | 
 
 
 
 
 | 1371 | #define MCIWNDM_GETFILENAMEW (WM_USER + 224) | 
 
 
 
 
 | 1372 | #define MCIWNDM_GETDEVICEW (WM_USER + 225) | 
 
 
 
 
 | 1373 | #define MCIWNDM_GETERRORW (WM_USER + 228) | 
 
 
 
 
 | 1374 | #define MCIWNDM_NEWW (WM_USER + 234) | 
 
 
 
 
 | 1375 | #define MCIWNDM_RETURNSTRINGW (WM_USER + 238) | 
 
 
 
 
 | 1376 | #define MCIWNDM_OPENW (WM_USER + 252) | 
 
 
 
 
 | 1377 |  | 
 
 
 
 
 | 1378 | #define MCIWNDM_SENDSTRING __MINGW_NAME_AW(MCIWNDM_SENDSTRING) | 
 
 
 
 
 | 1379 | #define MCIWNDM_GETPOSITION __MINGW_NAME_AW(MCIWNDM_GETPOSITION) | 
 
 
 
 
 | 1380 | #define MCIWNDM_GETMODE __MINGW_NAME_AW(MCIWNDM_GETMODE) | 
 
 
 
 
 | 1381 | #define MCIWNDM_SETTIMEFORMAT __MINGW_NAME_AW(MCIWNDM_SETTIMEFORMAT) | 
 
 
 
 
 | 1382 | #define MCIWNDM_GETTIMEFORMAT __MINGW_NAME_AW(MCIWNDM_GETTIMEFORMAT) | 
 
 
 
 
 | 1383 | #define MCIWNDM_GETFILENAME __MINGW_NAME_AW(MCIWNDM_GETFILENAME) | 
 
 
 
 
 | 1384 | #define MCIWNDM_GETDEVICE __MINGW_NAME_AW(MCIWNDM_GETDEVICE) | 
 
 
 
 
 | 1385 | #define MCIWNDM_GETERROR __MINGW_NAME_AW(MCIWNDM_GETERROR) | 
 
 
 
 
 | 1386 | #define MCIWNDM_NEW __MINGW_NAME_AW(MCIWNDM_NEW) | 
 
 
 
 
 | 1387 | #define MCIWNDM_RETURNSTRING __MINGW_NAME_AW(MCIWNDM_RETURNSTRING) | 
 
 
 
 
 | 1388 | #define MCIWNDM_OPEN __MINGW_NAME_AW(MCIWNDM_OPEN) | 
 
 
 
 
 | 1389 |  | 
 
 
 
 
 | 1390 | #define MCIWNDM_NOTIFYMODE (WM_USER + 200) | 
 
 
 
 
 | 1391 | #define MCIWNDM_NOTIFYPOS (WM_USER + 201) | 
 
 
 
 
 | 1392 | #define MCIWNDM_NOTIFYSIZE (WM_USER + 202) | 
 
 
 
 
 | 1393 | #define MCIWNDM_NOTIFYMEDIA (WM_USER + 203) | 
 
 
 
 
 | 1394 | #define MCIWNDM_NOTIFYERROR (WM_USER + 205) | 
 
 
 
 
 | 1395 |  | 
 
 
 
 
 | 1396 | #define MCIWND_START -1 | 
 
 
 
 
 | 1397 | #define MCIWND_END -2 | 
 
 
 
 
 | 1398 |  | 
 
 
 
 
 | 1399 | #ifndef MCI_PLAY | 
 
 
 
 
 | 1400 | #define MCI_CLOSE 0x0804 | 
 
 
 
 
 | 1401 | #define MCI_PLAY 0x0806 | 
 
 
 
 
 | 1402 | #define MCI_SEEK 0x0807 | 
 
 
 
 
 | 1403 | #define MCI_STOP 0x0808 | 
 
 
 
 
 | 1404 | #define MCI_PAUSE 0x0809 | 
 
 
 
 
 | 1405 | #define MCI_STEP 0x080E | 
 
 
 
 
 | 1406 | #define MCI_RECORD 0x080F | 
 
 
 
 
 | 1407 | #define MCI_SAVE 0x0813 | 
 
 
 
 
 | 1408 | #define MCI_CUT 0x0851 | 
 
 
 
 
 | 1409 | #define MCI_COPY 0x0852 | 
 
 
 
 
 | 1410 | #define MCI_PASTE 0x0853 | 
 
 
 
 
 | 1411 | #define MCI_RESUME 0x0855 | 
 
 
 
 
 | 1412 | #define MCI_DELETE 0x0856 | 
 
 
 
 
 | 1413 | #endif | 
 
 
 
 
 | 1414 |  | 
 
 
 
 
 | 1415 | #ifndef MCI_MODE_NOT_READY | 
 
 
 
 
 | 1416 |  | 
 
 
 
 
 | 1417 | #define MCI_MODE_NOT_READY (524) | 
 
 
 
 
 | 1418 | #define MCI_MODE_STOP (525) | 
 
 
 
 
 | 1419 | #define MCI_MODE_PLAY (526) | 
 
 
 
 
 | 1420 | #define MCI_MODE_RECORD (527) | 
 
 
 
 
 | 1421 | #define MCI_MODE_SEEK (528) | 
 
 
 
 
 | 1422 | #define MCI_MODE_PAUSE (529) | 
 
 
 
 
 | 1423 | #define MCI_MODE_OPEN (530) | 
 
 
 
 
 | 1424 | #endif | 
 
 
 
 
 | 1425 | #endif | 
 
 
 
 
 | 1426 |  | 
 
 
 
 
 | 1427 | #if !defined(NOAVICAP) || !defined(NOVIDEO) | 
 
 
 
 
 | 1428 |  | 
 
 
 
 
 | 1429 | #ifndef _RCINVOKED | 
 
 
 
 
 | 1430 |  | 
 
 
 
 
 | 1431 | DECLARE_HANDLE(HVIDEO); | 
 
 
 
 
 | 1432 | typedef HVIDEO *LPHVIDEO; | 
 
 
 
 
 | 1433 | #endif | 
 
 
 
 
 | 1434 |  | 
 
 
 
 
 | 1435 | DWORD WINAPI VideoForWindowsVersion(void); | 
 
 
 
 
 | 1436 |  | 
 
 
 
 
 | 1437 | #define DV_ERR_OK (0) | 
 
 
 
 
 | 1438 | #define DV_ERR_BASE (1) | 
 
 
 
 
 | 1439 | #define DV_ERR_NONSPECIFIC (DV_ERR_BASE) | 
 
 
 
 
 | 1440 | #define DV_ERR_BADFORMAT (DV_ERR_BASE + 1) | 
 
 
 
 
 | 1441 |  | 
 
 
 
 
 | 1442 | #define DV_ERR_STILLPLAYING (DV_ERR_BASE + 2) | 
 
 
 
 
 | 1443 |  | 
 
 
 
 
 | 1444 | #define DV_ERR_UNPREPARED (DV_ERR_BASE + 3) | 
 
 
 
 
 | 1445 |  | 
 
 
 
 
 | 1446 | #define DV_ERR_SYNC (DV_ERR_BASE + 4) | 
 
 
 
 
 | 1447 |  | 
 
 
 
 
 | 1448 | #define DV_ERR_TOOMANYCHANNELS (DV_ERR_BASE + 5) | 
 
 
 
 
 | 1449 |  | 
 
 
 
 
 | 1450 | #define DV_ERR_NOTDETECTED (DV_ERR_BASE + 6) | 
 
 
 
 
 | 1451 | #define DV_ERR_BADINSTALL (DV_ERR_BASE + 7) | 
 
 
 
 
 | 1452 | #define DV_ERR_CREATEPALETTE (DV_ERR_BASE + 8) | 
 
 
 
 
 | 1453 | #define DV_ERR_SIZEFIELD (DV_ERR_BASE + 9) | 
 
 
 
 
 | 1454 | #define DV_ERR_PARAM1 (DV_ERR_BASE + 10) | 
 
 
 
 
 | 1455 | #define DV_ERR_PARAM2 (DV_ERR_BASE + 11) | 
 
 
 
 
 | 1456 | #define DV_ERR_CONFIG1 (DV_ERR_BASE + 12) | 
 
 
 
 
 | 1457 | #define DV_ERR_CONFIG2 (DV_ERR_BASE + 13) | 
 
 
 
 
 | 1458 | #define DV_ERR_FLAGS (DV_ERR_BASE + 14) | 
 
 
 
 
 | 1459 | #define DV_ERR_13 (DV_ERR_BASE + 15) | 
 
 
 
 
 | 1460 |  | 
 
 
 
 
 | 1461 | #define DV_ERR_NOTSUPPORTED (DV_ERR_BASE + 16) | 
 
 
 
 
 | 1462 | #define DV_ERR_NOMEM (DV_ERR_BASE + 17) | 
 
 
 
 
 | 1463 | #define DV_ERR_ALLOCATED (DV_ERR_BASE + 18) | 
 
 
 
 
 | 1464 | #define DV_ERR_BADDEVICEID (DV_ERR_BASE + 19) | 
 
 
 
 
 | 1465 | #define DV_ERR_INVALHANDLE (DV_ERR_BASE + 20) | 
 
 
 
 
 | 1466 | #define DV_ERR_BADERRNUM (DV_ERR_BASE + 21) | 
 
 
 
 
 | 1467 | #define DV_ERR_NO_BUFFERS (DV_ERR_BASE + 22) | 
 
 
 
 
 | 1468 |  | 
 
 
 
 
 | 1469 | #define DV_ERR_MEM_CONFLICT (DV_ERR_BASE + 23) | 
 
 
 
 
 | 1470 | #define DV_ERR_IO_CONFLICT (DV_ERR_BASE + 24) | 
 
 
 
 
 | 1471 | #define DV_ERR_DMA_CONFLICT (DV_ERR_BASE + 25) | 
 
 
 
 
 | 1472 | #define DV_ERR_INT_CONFLICT (DV_ERR_BASE + 26) | 
 
 
 
 
 | 1473 | #define DV_ERR_PROTECT_ONLY (DV_ERR_BASE + 27) | 
 
 
 
 
 | 1474 | #define DV_ERR_LASTERROR (DV_ERR_BASE + 27) | 
 
 
 
 
 | 1475 |  | 
 
 
 
 
 | 1476 | #define DV_ERR_USER_MSG (DV_ERR_BASE + 1000) | 
 
 
 
 
 | 1477 |  | 
 
 
 
 
 | 1478 | #ifndef _RCINVOKED | 
 
 
 
 
 | 1479 |  | 
 
 
 
 
 | 1480 | #ifndef MM_DRVM_OPEN | 
 
 
 
 
 | 1481 | #define MM_DRVM_OPEN 0x3D0 | 
 
 
 
 
 | 1482 | #define MM_DRVM_CLOSE 0x3D1 | 
 
 
 
 
 | 1483 | #define MM_DRVM_DATA 0x3D2 | 
 
 
 
 
 | 1484 | #define MM_DRVM_ERROR 0x3D3 | 
 
 
 
 
 | 1485 | #endif | 
 
 
 
 
 | 1486 |  | 
 
 
 
 
 | 1487 | #define DV_VM_OPEN MM_DRVM_OPEN | 
 
 
 
 
 | 1488 | #define DV_VM_CLOSE MM_DRVM_CLOSE | 
 
 
 
 
 | 1489 | #define DV_VM_DATA MM_DRVM_DATA | 
 
 
 
 
 | 1490 | #define DV_VM_ERROR MM_DRVM_ERROR | 
 
 
 
 
 | 1491 |  | 
 
 
 
 
 | 1492 | typedef struct videohdr_tag { | 
 
 
 
 
 | 1493 | LPBYTE lpData; | 
 
 
 
 
 | 1494 | DWORD dwBufferLength; | 
 
 
 
 
 | 1495 | DWORD dwBytesUsed; | 
 
 
 
 
 | 1496 | DWORD dwTimeCaptured; | 
 
 
 
 
 | 1497 | DWORD_PTR dwUser; | 
 
 
 
 
 | 1498 | DWORD dwFlags; | 
 
 
 
 
 | 1499 | DWORD_PTR dwReserved[4]; | 
 
 
 
 
 | 1500 | } VIDEOHDR, NEAR *PVIDEOHDR, FAR * LPVIDEOHDR; | 
 
 
 
 
 | 1501 |  | 
 
 
 
 
 | 1502 | #define VHDR_DONE 0x00000001 | 
 
 
 
 
 | 1503 | #define VHDR_PREPARED 0x00000002 | 
 
 
 
 
 | 1504 | #define VHDR_INQUEUE 0x00000004 | 
 
 
 
 
 | 1505 | #define VHDR_KEYFRAME 0x00000008 | 
 
 
 
 
 | 1506 | #define VHDR_VALID 0x0000000F | 
 
 
 
 
 | 1507 |  | 
 
 
 
 
 | 1508 | typedef struct channel_caps_tag { | 
 
 
 
 
 | 1509 | DWORD dwFlags; | 
 
 
 
 
 | 1510 | DWORD dwSrcRectXMod; | 
 
 
 
 
 | 1511 | DWORD dwSrcRectYMod; | 
 
 
 
 
 | 1512 | DWORD dwSrcRectWidthMod; | 
 
 
 
 
 | 1513 | DWORD dwSrcRectHeightMod; | 
 
 
 
 
 | 1514 | DWORD dwDstRectXMod; | 
 
 
 
 
 | 1515 | DWORD dwDstRectYMod; | 
 
 
 
 
 | 1516 | DWORD dwDstRectWidthMod; | 
 
 
 
 
 | 1517 | DWORD dwDstRectHeightMod; | 
 
 
 
 
 | 1518 | } CHANNEL_CAPS,NEAR *PCHANNEL_CAPS,*LPCHANNEL_CAPS; | 
 
 
 
 
 | 1519 |  | 
 
 
 
 
 | 1520 | #define VCAPS_OVERLAY 0x00000001 | 
 
 
 
 
 | 1521 | #define VCAPS_SRC_CAN_CLIP 0x00000002 | 
 
 
 
 
 | 1522 | #define VCAPS_DST_CAN_CLIP 0x00000004 | 
 
 
 
 
 | 1523 | #define VCAPS_CAN_SCALE 0x00000008 | 
 
 
 
 
 | 1524 |  | 
 
 
 
 
 | 1525 | #define VIDEO_EXTERNALIN 0x0001 | 
 
 
 
 
 | 1526 | #define VIDEO_EXTERNALOUT 0x0002 | 
 
 
 
 
 | 1527 | #define VIDEO_IN 0x0004 | 
 
 
 
 
 | 1528 | #define VIDEO_OUT 0x0008 | 
 
 
 
 
 | 1529 |  | 
 
 
 
 
 | 1530 | #define VIDEO_DLG_QUERY 0x0010 | 
 
 
 
 
 | 1531 |  | 
 
 
 
 
 | 1532 | #define VIDEO_CONFIGURE_QUERY 0x8000 | 
 
 
 
 
 | 1533 |  | 
 
 
 
 
 | 1534 | #define VIDEO_CONFIGURE_SET 0x1000 | 
 
 
 
 
 | 1535 |  | 
 
 
 
 
 | 1536 | #define VIDEO_CONFIGURE_GET 0x2000 | 
 
 
 
 
 | 1537 | #define VIDEO_CONFIGURE_QUERYSIZE 0x0001 | 
 
 
 
 
 | 1538 |  | 
 
 
 
 
 | 1539 | #define VIDEO_CONFIGURE_CURRENT 0x0010 | 
 
 
 
 
 | 1540 | #define VIDEO_CONFIGURE_NOMINAL 0x0020 | 
 
 
 
 
 | 1541 | #define VIDEO_CONFIGURE_MIN 0x0040 | 
 
 
 
 
 | 1542 | #define VIDEO_CONFIGURE_MAX 0x0080 | 
 
 
 
 
 | 1543 |  | 
 
 
 
 
 | 1544 | #define DVM_USER 0X4000 | 
 
 
 
 
 | 1545 |  | 
 
 
 
 
 | 1546 | #define DVM_CONFIGURE_START 0x1000 | 
 
 
 
 
 | 1547 | #define DVM_CONFIGURE_END 0x1FFF | 
 
 
 
 
 | 1548 |  | 
 
 
 
 
 | 1549 | #define DVM_PALETTE (DVM_CONFIGURE_START + 1) | 
 
 
 
 
 | 1550 | #define DVM_FORMAT (DVM_CONFIGURE_START + 2) | 
 
 
 
 
 | 1551 | #define DVM_PALETTERGB555 (DVM_CONFIGURE_START + 3) | 
 
 
 
 
 | 1552 | #define DVM_SRC_RECT (DVM_CONFIGURE_START + 4) | 
 
 
 
 
 | 1553 | #define DVM_DST_RECT (DVM_CONFIGURE_START + 5) | 
 
 
 
 
 | 1554 | #endif | 
 
 
 
 
 | 1555 | #endif | 
 
 
 
 
 | 1556 |  | 
 
 
 
 
 | 1557 | #ifndef NOAVICAP | 
 
 
 
 
 | 1558 | #ifdef __cplusplus | 
 
 
 
 
 | 1559 |  | 
 
 
 
 
 | 1560 | #define AVICapSM(hwnd,m,w,l) ((::IsWindow(hwnd)) ? ::SendMessage(hwnd,m,w,l) : 0) | 
 
 
 
 
 | 1561 | #else | 
 
 
 
 
 | 1562 |  | 
 
 
 
 
 | 1563 | #define AVICapSM(hwnd,m,w,l) ((IsWindow(hwnd)) ? SendMessage(hwnd,m,w,l) : 0) | 
 
 
 
 
 | 1564 | #endif | 
 
 
 
 
 | 1565 |  | 
 
 
 
 
 | 1566 | #ifndef RC_INVOKED | 
 
 
 
 
 | 1567 |  | 
 
 
 
 
 | 1568 | #define WM_CAP_START WM_USER | 
 
 
 
 
 | 1569 |  | 
 
 
 
 
 | 1570 | #define WM_CAP_UNICODE_START WM_USER+100 | 
 
 
 
 
 | 1571 |  | 
 
 
 
 
 | 1572 | #define WM_CAP_GET_CAPSTREAMPTR (WM_CAP_START+ 1) | 
 
 
 
 
 | 1573 |  | 
 
 
 
 
 | 1574 | #define WM_CAP_SET_CALLBACK_ERRORW (WM_CAP_UNICODE_START+ 2) | 
 
 
 
 
 | 1575 | #define WM_CAP_SET_CALLBACK_STATUSW (WM_CAP_UNICODE_START+ 3) | 
 
 
 
 
 | 1576 | #define WM_CAP_SET_CALLBACK_ERRORA (WM_CAP_START+ 2) | 
 
 
 
 
 | 1577 | #define WM_CAP_SET_CALLBACK_STATUSA (WM_CAP_START+ 3) | 
 
 
 
 
 | 1578 |  | 
 
 
 
 
 | 1579 | #define WM_CAP_SET_CALLBACK_ERROR __MINGW_NAME_AW(WM_CAP_SET_CALLBACK_ERROR) | 
 
 
 
 
 | 1580 | #define WM_CAP_SET_CALLBACK_STATUS __MINGW_NAME_AW(WM_CAP_SET_CALLBACK_STATUS) | 
 
 
 
 
 | 1581 |  | 
 
 
 
 
 | 1582 | #define WM_CAP_SET_CALLBACK_YIELD (WM_CAP_START+ 4) | 
 
 
 
 
 | 1583 | #define WM_CAP_SET_CALLBACK_FRAME (WM_CAP_START+ 5) | 
 
 
 
 
 | 1584 | #define WM_CAP_SET_CALLBACK_VIDEOSTREAM (WM_CAP_START+ 6) | 
 
 
 
 
 | 1585 | #define WM_CAP_SET_CALLBACK_WAVESTREAM (WM_CAP_START+ 7) | 
 
 
 
 
 | 1586 | #define WM_CAP_GET_USER_DATA (WM_CAP_START+ 8) | 
 
 
 
 
 | 1587 | #define WM_CAP_SET_USER_DATA (WM_CAP_START+ 9) | 
 
 
 
 
 | 1588 |  | 
 
 
 
 
 | 1589 | #define WM_CAP_DRIVER_CONNECT (WM_CAP_START+ 10) | 
 
 
 
 
 | 1590 | #define WM_CAP_DRIVER_DISCONNECT (WM_CAP_START+ 11) | 
 
 
 
 
 | 1591 |  | 
 
 
 
 
 | 1592 | #define WM_CAP_DRIVER_GET_NAMEA (WM_CAP_START+ 12) | 
 
 
 
 
 | 1593 | #define WM_CAP_DRIVER_GET_VERSIONA (WM_CAP_START+ 13) | 
 
 
 
 
 | 1594 | #define WM_CAP_DRIVER_GET_NAMEW (WM_CAP_UNICODE_START+ 12) | 
 
 
 
 
 | 1595 | #define WM_CAP_DRIVER_GET_VERSIONW (WM_CAP_UNICODE_START+ 13) | 
 
 
 
 
 | 1596 |  | 
 
 
 
 
 | 1597 | #define WM_CAP_DRIVER_GET_NAME __MINGW_NAME_AW(WM_CAP_DRIVER_GET_NAME) | 
 
 
 
 
 | 1598 | #define WM_CAP_DRIVER_GET_VERSION __MINGW_NAME_AW(WM_CAP_DRIVER_GET_VERSION) | 
 
 
 
 
 | 1599 |  | 
 
 
 
 
 | 1600 | #define WM_CAP_DRIVER_GET_CAPS (WM_CAP_START+ 14) | 
 
 
 
 
 | 1601 |  | 
 
 
 
 
 | 1602 | #define WM_CAP_FILE_SET_CAPTURE_FILEA (WM_CAP_START+ 20) | 
 
 
 
 
 | 1603 | #define WM_CAP_FILE_GET_CAPTURE_FILEA (WM_CAP_START+ 21) | 
 
 
 
 
 | 1604 | #define WM_CAP_FILE_SAVEASA (WM_CAP_START+ 23) | 
 
 
 
 
 | 1605 | #define WM_CAP_FILE_SAVEDIBA (WM_CAP_START+ 25) | 
 
 
 
 
 | 1606 | #define WM_CAP_FILE_SET_CAPTURE_FILEW (WM_CAP_UNICODE_START+ 20) | 
 
 
 
 
 | 1607 | #define WM_CAP_FILE_GET_CAPTURE_FILEW (WM_CAP_UNICODE_START+ 21) | 
 
 
 
 
 | 1608 | #define WM_CAP_FILE_SAVEASW (WM_CAP_UNICODE_START+ 23) | 
 
 
 
 
 | 1609 | #define WM_CAP_FILE_SAVEDIBW (WM_CAP_UNICODE_START+ 25) | 
 
 
 
 
 | 1610 |  | 
 
 
 
 
 | 1611 | #define WM_CAP_FILE_SET_CAPTURE_FILE __MINGW_NAME_AW(WM_CAP_FILE_SET_CAPTURE_FILE) | 
 
 
 
 
 | 1612 | #define WM_CAP_FILE_GET_CAPTURE_FILE __MINGW_NAME_AW(WM_CAP_FILE_GET_CAPTURE_FILE) | 
 
 
 
 
 | 1613 | #define WM_CAP_FILE_SAVEAS __MINGW_NAME_AW(WM_CAP_FILE_SAVEAS) | 
 
 
 
 
 | 1614 | #define WM_CAP_FILE_SAVEDIB __MINGW_NAME_AW(WM_CAP_FILE_SAVEDIB) | 
 
 
 
 
 | 1615 |  | 
 
 
 
 
 | 1616 | #define WM_CAP_FILE_ALLOCATE (WM_CAP_START+ 22) | 
 
 
 
 
 | 1617 | #define WM_CAP_FILE_SET_INFOCHUNK (WM_CAP_START+ 24) | 
 
 
 
 
 | 1618 |  | 
 
 
 
 
 | 1619 | #define WM_CAP_EDIT_COPY (WM_CAP_START+ 30) | 
 
 
 
 
 | 1620 |  | 
 
 
 
 
 | 1621 | #define WM_CAP_SET_AUDIOFORMAT (WM_CAP_START+ 35) | 
 
 
 
 
 | 1622 | #define WM_CAP_GET_AUDIOFORMAT (WM_CAP_START+ 36) | 
 
 
 
 
 | 1623 |  | 
 
 
 
 
 | 1624 | #define WM_CAP_DLG_VIDEOFORMAT (WM_CAP_START+ 41) | 
 
 
 
 
 | 1625 | #define WM_CAP_DLG_VIDEOSOURCE (WM_CAP_START+ 42) | 
 
 
 
 
 | 1626 | #define WM_CAP_DLG_VIDEODISPLAY (WM_CAP_START+ 43) | 
 
 
 
 
 | 1627 | #define WM_CAP_GET_VIDEOFORMAT (WM_CAP_START+ 44) | 
 
 
 
 
 | 1628 | #define WM_CAP_SET_VIDEOFORMAT (WM_CAP_START+ 45) | 
 
 
 
 
 | 1629 | #define WM_CAP_DLG_VIDEOCOMPRESSION (WM_CAP_START+ 46) | 
 
 
 
 
 | 1630 |  | 
 
 
 
 
 | 1631 | #define WM_CAP_SET_PREVIEW (WM_CAP_START+ 50) | 
 
 
 
 
 | 1632 | #define WM_CAP_SET_OVERLAY (WM_CAP_START+ 51) | 
 
 
 
 
 | 1633 | #define WM_CAP_SET_PREVIEWRATE (WM_CAP_START+ 52) | 
 
 
 
 
 | 1634 | #define WM_CAP_SET_SCALE (WM_CAP_START+ 53) | 
 
 
 
 
 | 1635 | #define WM_CAP_GET_STATUS (WM_CAP_START+ 54) | 
 
 
 
 
 | 1636 | #define WM_CAP_SET_SCROLL (WM_CAP_START+ 55) | 
 
 
 
 
 | 1637 |  | 
 
 
 
 
 | 1638 | #define WM_CAP_GRAB_FRAME (WM_CAP_START+ 60) | 
 
 
 
 
 | 1639 | #define WM_CAP_GRAB_FRAME_NOSTOP (WM_CAP_START+ 61) | 
 
 
 
 
 | 1640 |  | 
 
 
 
 
 | 1641 | #define WM_CAP_SEQUENCE (WM_CAP_START+ 62) | 
 
 
 
 
 | 1642 | #define WM_CAP_SEQUENCE_NOFILE (WM_CAP_START+ 63) | 
 
 
 
 
 | 1643 | #define WM_CAP_SET_SEQUENCE_SETUP (WM_CAP_START+ 64) | 
 
 
 
 
 | 1644 | #define WM_CAP_GET_SEQUENCE_SETUP (WM_CAP_START+ 65) | 
 
 
 
 
 | 1645 |  | 
 
 
 
 
 | 1646 | #define WM_CAP_SET_MCI_DEVICEA (WM_CAP_START+ 66) | 
 
 
 
 
 | 1647 | #define WM_CAP_GET_MCI_DEVICEA (WM_CAP_START+ 67) | 
 
 
 
 
 | 1648 | #define WM_CAP_SET_MCI_DEVICEW (WM_CAP_UNICODE_START+ 66) | 
 
 
 
 
 | 1649 | #define WM_CAP_GET_MCI_DEVICEW (WM_CAP_UNICODE_START+ 67) | 
 
 
 
 
 | 1650 |  | 
 
 
 
 
 | 1651 | #define WM_CAP_SET_MCI_DEVICE __MINGW_NAME_AW(WM_CAP_SET_MCI_DEVICE) | 
 
 
 
 
 | 1652 | #define WM_CAP_GET_MCI_DEVICE __MINGW_NAME_AW(WM_CAP_GET_MCI_DEVICE) | 
 
 
 
 
 | 1653 |  | 
 
 
 
 
 | 1654 | #define WM_CAP_STOP (WM_CAP_START+ 68) | 
 
 
 
 
 | 1655 | #define WM_CAP_ABORT (WM_CAP_START+ 69) | 
 
 
 
 
 | 1656 |  | 
 
 
 
 
 | 1657 | #define WM_CAP_SINGLE_FRAME_OPEN (WM_CAP_START+ 70) | 
 
 
 
 
 | 1658 | #define WM_CAP_SINGLE_FRAME_CLOSE (WM_CAP_START+ 71) | 
 
 
 
 
 | 1659 | #define WM_CAP_SINGLE_FRAME (WM_CAP_START+ 72) | 
 
 
 
 
 | 1660 |  | 
 
 
 
 
 | 1661 | #define WM_CAP_PAL_OPENA (WM_CAP_START+ 80) | 
 
 
 
 
 | 1662 | #define WM_CAP_PAL_SAVEA (WM_CAP_START+ 81) | 
 
 
 
 
 | 1663 | #define WM_CAP_PAL_OPENW (WM_CAP_UNICODE_START+ 80) | 
 
 
 
 
 | 1664 | #define WM_CAP_PAL_SAVEW (WM_CAP_UNICODE_START+ 81) | 
 
 
 
 
 | 1665 |  | 
 
 
 
 
 | 1666 | #define WM_CAP_PAL_OPEN __MINGW_NAME_AW(WM_CAP_PAL_OPEN) | 
 
 
 
 
 | 1667 | #define WM_CAP_PAL_SAVE __MINGW_NAME_AW(WM_CAP_PAL_SAVE) | 
 
 
 
 
 | 1668 |  | 
 
 
 
 
 | 1669 | #define WM_CAP_PAL_PASTE (WM_CAP_START+ 82) | 
 
 
 
 
 | 1670 | #define WM_CAP_PAL_AUTOCREATE (WM_CAP_START+ 83) | 
 
 
 
 
 | 1671 | #define WM_CAP_PAL_MANUALCREATE (WM_CAP_START+ 84) | 
 
 
 
 
 | 1672 |  | 
 
 
 
 
 | 1673 | #define WM_CAP_SET_CALLBACK_CAPCONTROL (WM_CAP_START+ 85) | 
 
 
 
 
 | 1674 |  | 
 
 
 
 
 | 1675 | #define WM_CAP_UNICODE_END WM_CAP_PAL_SAVEW | 
 
 
 
 
 | 1676 | #define WM_CAP_END WM_CAP_UNICODE_END | 
 
 
 
 
 | 1677 |  | 
 
 
 
 
 | 1678 | #define capSetCallbackOnError(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_ERROR,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1679 | #define capSetCallbackOnStatus(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_STATUS,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1680 | #define capSetCallbackOnYield(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_YIELD,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1681 | #define capSetCallbackOnFrame(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_FRAME,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1682 | #define capSetCallbackOnVideoStream(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_VIDEOSTREAM,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1683 | #define capSetCallbackOnWaveStream(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_WAVESTREAM,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1684 | #define capSetCallbackOnCapControl(hwnd,fpProc) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_CALLBACK_CAPCONTROL,(WPARAM)0,(LPARAM)(LPVOID)(fpProc))) | 
 
 
 
 
 | 1685 |  | 
 
 
 
 
 | 1686 | #define capSetUserData(hwnd,lUser) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_USER_DATA,(WPARAM)0,(LPARAM)lUser)) | 
 
 
 
 
 | 1687 | #define capGetUserData(hwnd) (AVICapSM(hwnd,WM_CAP_GET_USER_DATA,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1688 |  | 
 
 
 
 
 | 1689 | #define capDriverConnect(hwnd,i) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DRIVER_CONNECT,(WPARAM)(i),(LPARAM)0)) | 
 
 
 
 
 | 1690 | #define capDriverDisconnect(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DRIVER_DISCONNECT,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1691 | #define capDriverGetName(hwnd,szName,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DRIVER_GET_NAME,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1692 | #define capDriverGetVersion(hwnd,szVer,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DRIVER_GET_VERSION,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPTSTR)(szVer))) | 
 
 
 
 
 | 1693 | #define capDriverGetCaps(hwnd,s,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DRIVER_GET_CAPS,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPCAPDRIVERCAPS)(s))) | 
 
 
 
 
 | 1694 |  | 
 
 
 
 
 | 1695 | #define capFileSetCaptureFile(hwnd,szName) ((WINBOOL)AVICapSM(hwnd,WM_CAP_FILE_SET_CAPTURE_FILE,(WPARAM)0,(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1696 | #define capFileGetCaptureFile(hwnd,szName,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_FILE_GET_CAPTURE_FILE,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1697 | #define capFileAlloc(hwnd,dwSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_FILE_ALLOCATE,(WPARAM)0,(LPARAM)(DWORD)(dwSize))) | 
 
 
 
 
 | 1698 | #define capFileSaveAs(hwnd,szName) ((WINBOOL)AVICapSM(hwnd,WM_CAP_FILE_SAVEAS,(WPARAM)0,(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1699 | #define capFileSetInfoChunk(hwnd,lpInfoChunk) ((WINBOOL)AVICapSM(hwnd,WM_CAP_FILE_SET_INFOCHUNK,(WPARAM)0,(LPARAM)(LPCAPINFOCHUNK)(lpInfoChunk))) | 
 
 
 
 
 | 1700 | #define capFileSaveDIB(hwnd,szName) ((WINBOOL)AVICapSM(hwnd,WM_CAP_FILE_SAVEDIB,(WPARAM)0,(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1701 |  | 
 
 
 
 
 | 1702 | #define capEditCopy(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_EDIT_COPY,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1703 |  | 
 
 
 
 
 | 1704 | #define capSetAudioFormat(hwnd,s,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_AUDIOFORMAT,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPWAVEFORMATEX)(s))) | 
 
 
 
 
 | 1705 | #define capGetAudioFormat(hwnd,s,wSize) ((DWORD)AVICapSM(hwnd,WM_CAP_GET_AUDIOFORMAT,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPWAVEFORMATEX)(s))) | 
 
 
 
 
 | 1706 | #define capGetAudioFormatSize(hwnd) ((DWORD)AVICapSM(hwnd,WM_CAP_GET_AUDIOFORMAT,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1707 |  | 
 
 
 
 
 | 1708 | #define capDlgVideoFormat(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DLG_VIDEOFORMAT,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1709 | #define capDlgVideoSource(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DLG_VIDEOSOURCE,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1710 | #define capDlgVideoDisplay(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DLG_VIDEODISPLAY,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1711 | #define capDlgVideoCompression(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_DLG_VIDEOCOMPRESSION,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1712 |  | 
 
 
 
 
 | 1713 | #define capGetVideoFormat(hwnd,s,wSize) ((DWORD)AVICapSM(hwnd,WM_CAP_GET_VIDEOFORMAT,(WPARAM)(wSize),(LPARAM)(LPVOID)(s))) | 
 
 
 
 
 | 1714 | #define capGetVideoFormatSize(hwnd) ((DWORD)AVICapSM(hwnd,WM_CAP_GET_VIDEOFORMAT,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1715 | #define capSetVideoFormat(hwnd,s,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_VIDEOFORMAT,(WPARAM)(wSize),(LPARAM)(LPVOID)(s))) | 
 
 
 
 
 | 1716 |  | 
 
 
 
 
 | 1717 | #define capPreview(hwnd,f) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_PREVIEW,(WPARAM)(WINBOOL)(f),(LPARAM)0)) | 
 
 
 
 
 | 1718 | #define capPreviewRate(hwnd,wMS) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_PREVIEWRATE,(WPARAM)(wMS),(LPARAM)0)) | 
 
 
 
 
 | 1719 | #define capOverlay(hwnd,f) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_OVERLAY,(WPARAM)(WINBOOL)(f),(LPARAM)0)) | 
 
 
 
 
 | 1720 | #define capPreviewScale(hwnd,f) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_SCALE,(WPARAM)(WINBOOL)f,(LPARAM)0)) | 
 
 
 
 
 | 1721 | #define capGetStatus(hwnd,s,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_GET_STATUS,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPCAPSTATUS)(s))) | 
 
 
 
 
 | 1722 | #define capSetScrollPos(hwnd,lpP) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_SCROLL,(WPARAM)0,(LPARAM)(LPPOINT)(lpP))) | 
 
 
 
 
 | 1723 |  | 
 
 
 
 
 | 1724 | #define capGrabFrame(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_GRAB_FRAME,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1725 | #define capGrabFrameNoStop(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_GRAB_FRAME_NOSTOP,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1726 |  | 
 
 
 
 
 | 1727 | #define capCaptureSequence(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SEQUENCE,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1728 | #define capCaptureSequenceNoFile(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SEQUENCE_NOFILE,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1729 | #define capCaptureStop(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_STOP,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1730 | #define capCaptureAbort(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_ABORT,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1731 |  | 
 
 
 
 
 | 1732 | #define capCaptureSingleFrameOpen(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SINGLE_FRAME_OPEN,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1733 | #define capCaptureSingleFrameClose(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SINGLE_FRAME_CLOSE,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1734 | #define capCaptureSingleFrame(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SINGLE_FRAME,(WPARAM)0,(LPARAM)0)) | 
 
 
 
 
 | 1735 |  | 
 
 
 
 
 | 1736 | #define capCaptureGetSetup(hwnd,s,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_GET_SEQUENCE_SETUP,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPCAPTUREPARMS)(s))) | 
 
 
 
 
 | 1737 | #define capCaptureSetSetup(hwnd,s,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_SEQUENCE_SETUP,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPCAPTUREPARMS)(s))) | 
 
 
 
 
 | 1738 |  | 
 
 
 
 
 | 1739 | #define capSetMCIDeviceName(hwnd,szName) ((WINBOOL)AVICapSM(hwnd,WM_CAP_SET_MCI_DEVICE,(WPARAM)0,(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1740 | #define capGetMCIDeviceName(hwnd,szName,wSize) ((WINBOOL)AVICapSM(hwnd,WM_CAP_GET_MCI_DEVICE,(WPARAM)(wSize),(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1741 |  | 
 
 
 
 
 | 1742 | #define capPaletteOpen(hwnd,szName) ((WINBOOL)AVICapSM(hwnd,WM_CAP_PAL_OPEN,(WPARAM)0,(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1743 | #define capPaletteSave(hwnd,szName) ((WINBOOL)AVICapSM(hwnd,WM_CAP_PAL_SAVE,(WPARAM)0,(LPARAM)(LPVOID)(LPTSTR)(szName))) | 
 
 
 
 
 | 1744 | #define capPalettePaste(hwnd) ((WINBOOL)AVICapSM(hwnd,WM_CAP_PAL_PASTE,(WPARAM) 0,(LPARAM)0)) | 
 
 
 
 
 | 1745 | #define capPaletteAuto(hwnd,iFrames,iColors) ((WINBOOL)AVICapSM(hwnd,WM_CAP_PAL_AUTOCREATE,(WPARAM)(iFrames),(LPARAM)(DWORD)(iColors))) | 
 
 
 
 
 | 1746 | #define capPaletteManual(hwnd,fGrab,iColors) ((WINBOOL)AVICapSM(hwnd,WM_CAP_PAL_MANUALCREATE,(WPARAM)(fGrab),(LPARAM)(DWORD)(iColors))) | 
 
 
 
 
 | 1747 |  | 
 
 
 
 
 | 1748 | typedef struct tagCapDriverCaps { | 
 
 
 
 
 | 1749 | UINT wDeviceIndex; | 
 
 
 
 
 | 1750 | WINBOOL fHasOverlay; | 
 
 
 
 
 | 1751 | WINBOOL fHasDlgVideoSource; | 
 
 
 
 
 | 1752 | WINBOOL fHasDlgVideoFormat; | 
 
 
 
 
 | 1753 | WINBOOL fHasDlgVideoDisplay; | 
 
 
 
 
 | 1754 | WINBOOL fCaptureInitialized; | 
 
 
 
 
 | 1755 | WINBOOL fDriverSuppliesPalettes; | 
 
 
 
 
 | 1756 | HANDLE hVideoIn; | 
 
 
 
 
 | 1757 | HANDLE hVideoOut; | 
 
 
 
 
 | 1758 | HANDLE hVideoExtIn; | 
 
 
 
 
 | 1759 | HANDLE hVideoExtOut; | 
 
 
 
 
 | 1760 | } CAPDRIVERCAPS,*PCAPDRIVERCAPS,*LPCAPDRIVERCAPS; | 
 
 
 
 
 | 1761 |  | 
 
 
 
 
 | 1762 | typedef struct tagCapStatus { | 
 
 
 
 
 | 1763 | UINT uiImageWidth; | 
 
 
 
 
 | 1764 | UINT uiImageHeight; | 
 
 
 
 
 | 1765 | WINBOOL fLiveWindow; | 
 
 
 
 
 | 1766 | WINBOOL fOverlayWindow; | 
 
 
 
 
 | 1767 | WINBOOL fScale; | 
 
 
 
 
 | 1768 | POINT ptScroll; | 
 
 
 
 
 | 1769 | WINBOOL fUsingDefaultPalette; | 
 
 
 
 
 | 1770 | WINBOOL fAudioHardware; | 
 
 
 
 
 | 1771 | WINBOOL fCapFileExists; | 
 
 
 
 
 | 1772 | DWORD dwCurrentVideoFrame; | 
 
 
 
 
 | 1773 | DWORD dwCurrentVideoFramesDropped; | 
 
 
 
 
 | 1774 | DWORD dwCurrentWaveSamples; | 
 
 
 
 
 | 1775 | DWORD dwCurrentTimeElapsedMS; | 
 
 
 
 
 | 1776 | HPALETTE hPalCurrent; | 
 
 
 
 
 | 1777 | WINBOOL fCapturingNow; | 
 
 
 
 
 | 1778 | DWORD dwReturn; | 
 
 
 
 
 | 1779 | UINT wNumVideoAllocated; | 
 
 
 
 
 | 1780 | UINT wNumAudioAllocated; | 
 
 
 
 
 | 1781 | } CAPSTATUS,*PCAPSTATUS,*LPCAPSTATUS; | 
 
 
 
 
 | 1782 |  | 
 
 
 
 
 | 1783 | typedef struct tagCaptureParms { | 
 
 
 
 
 | 1784 | DWORD dwRequestMicroSecPerFrame; | 
 
 
 
 
 | 1785 | WINBOOL fMakeUserHitOKToCapture; | 
 
 
 
 
 | 1786 | UINT wPercentDropForError; | 
 
 
 
 
 | 1787 | WINBOOL fYield; | 
 
 
 
 
 | 1788 | DWORD dwIndexSize; | 
 
 
 
 
 | 1789 | UINT wChunkGranularity; | 
 
 
 
 
 | 1790 | WINBOOL fUsingDOSMemory; | 
 
 
 
 
 | 1791 | UINT wNumVideoRequested; | 
 
 
 
 
 | 1792 | WINBOOL fCaptureAudio; | 
 
 
 
 
 | 1793 | UINT wNumAudioRequested; | 
 
 
 
 
 | 1794 | UINT vKeyAbort; | 
 
 
 
 
 | 1795 | WINBOOL fAbortLeftMouse; | 
 
 
 
 
 | 1796 | WINBOOL fAbortRightMouse; | 
 
 
 
 
 | 1797 | WINBOOL fLimitEnabled; | 
 
 
 
 
 | 1798 | UINT wTimeLimit; | 
 
 
 
 
 | 1799 | WINBOOL fMCIControl; | 
 
 
 
 
 | 1800 | WINBOOL fStepMCIDevice; | 
 
 
 
 
 | 1801 | DWORD dwMCIStartTime; | 
 
 
 
 
 | 1802 | DWORD dwMCIStopTime; | 
 
 
 
 
 | 1803 | WINBOOL fStepCaptureAt2x; | 
 
 
 
 
 | 1804 | UINT wStepCaptureAverageFrames; | 
 
 
 
 
 | 1805 | DWORD dwAudioBufferSize; | 
 
 
 
 
 | 1806 | WINBOOL fDisableWriteCache; | 
 
 
 
 
 | 1807 | UINT AVStreamMaster; | 
 
 
 
 
 | 1808 | } CAPTUREPARMS,*PCAPTUREPARMS,*LPCAPTUREPARMS; | 
 
 
 
 
 | 1809 |  | 
 
 
 
 
 | 1810 | #define AVSTREAMMASTER_AUDIO 0 | 
 
 
 
 
 | 1811 | #define AVSTREAMMASTER_NONE 1 | 
 
 
 
 
 | 1812 |  | 
 
 
 
 
 | 1813 | typedef struct tagCapInfoChunk { | 
 
 
 
 
 | 1814 | FOURCC fccInfoID; | 
 
 
 
 
 | 1815 | LPVOID lpData; | 
 
 
 
 
 | 1816 | LONG cbData; | 
 
 
 
 
 | 1817 | } CAPINFOCHUNK,*PCAPINFOCHUNK,*LPCAPINFOCHUNK; | 
 
 
 
 
 | 1818 |  | 
 
 
 
 
 | 1819 | typedef LRESULT (CALLBACK *CAPYIELDCALLBACK)(HWND hWnd); | 
 
 
 
 
 | 1820 | typedef LRESULT (CALLBACK *CAPSTATUSCALLBACKW)(HWND hWnd,int nID,LPCWSTR lpsz); | 
 
 
 
 
 | 1821 | typedef LRESULT (CALLBACK *CAPERRORCALLBACKW)(HWND hWnd,int nID,LPCWSTR lpsz); | 
 
 
 
 
 | 1822 | typedef LRESULT (CALLBACK *CAPSTATUSCALLBACKA)(HWND hWnd,int nID,LPCSTR lpsz); | 
 
 
 
 
 | 1823 | typedef LRESULT (CALLBACK *CAPERRORCALLBACKA)(HWND hWnd,int nID,LPCSTR lpsz); | 
 
 
 
 
 | 1824 |  | 
 
 
 
 
 | 1825 | #define CAPSTATUSCALLBACK __MINGW_NAME_AW(CAPSTATUSCALLBACK) | 
 
 
 
 
 | 1826 | #define CAPERRORCALLBACK __MINGW_NAME_AW(CAPERRORCALLBACK) | 
 
 
 
 
 | 1827 |  | 
 
 
 
 
 | 1828 | typedef LRESULT (CALLBACK *CAPVIDEOCALLBACK)(HWND hWnd,LPVIDEOHDR lpVHdr); | 
 
 
 
 
 | 1829 | typedef LRESULT (CALLBACK *CAPWAVECALLBACK)(HWND hWnd,LPWAVEHDR lpWHdr); | 
 
 
 
 
 | 1830 | typedef LRESULT (CALLBACK *CAPCONTROLCALLBACK)(HWND hWnd,int nState); | 
 
 
 
 
 | 1831 |  | 
 
 
 
 
 | 1832 | #define CONTROLCALLBACK_PREROLL 1 | 
 
 
 
 
 | 1833 | #define CONTROLCALLBACK_CAPTURING 2 | 
 
 
 
 
 | 1834 |  | 
 
 
 
 
 | 1835 | HWND WINAPI capCreateCaptureWindowA (LPCSTR lpszWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hwndParent,int nID); | 
 
 
 
 
 | 1836 | WINBOOL WINAPI capGetDriverDescriptionA (UINT wDriverIndex,LPSTR lpszName,int cbName,LPSTR lpszVer,int cbVer); | 
 
 
 
 
 | 1837 | HWND WINAPI capCreateCaptureWindowW (LPCWSTR lpszWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hwndParent,int nID); | 
 
 
 
 
 | 1838 | WINBOOL WINAPI capGetDriverDescriptionW (UINT wDriverIndex,LPWSTR lpszName,int cbName,LPWSTR lpszVer,int cbVer); | 
 
 
 
 
 | 1839 |  | 
 
 
 
 
 | 1840 | #define capCreateCaptureWindow __MINGW_NAME_AW(capCreateCaptureWindow) | 
 
 
 
 
 | 1841 | #define capGetDriverDescription __MINGW_NAME_AW(capGetDriverDescription) | 
 
 
 
 
 | 1842 | #endif | 
 
 
 
 
 | 1843 |  | 
 
 
 
 
 | 1844 | #define infotypeDIGITIZATION_TIME mmioFOURCC ('I','D','I','T') | 
 
 
 
 
 | 1845 | #define infotypeSMPTE_TIME mmioFOURCC ('I','S','M','P') | 
 
 
 
 
 | 1846 |  | 
 
 
 
 
 | 1847 | #define IDS_CAP_BEGIN 300 | 
 
 
 
 
 | 1848 | #define IDS_CAP_END 301 | 
 
 
 
 
 | 1849 |  | 
 
 
 
 
 | 1850 | #define IDS_CAP_INFO 401 | 
 
 
 
 
 | 1851 | #define IDS_CAP_OUTOFMEM 402 | 
 
 
 
 
 | 1852 | #define IDS_CAP_FILEEXISTS 403 | 
 
 
 
 
 | 1853 | #define IDS_CAP_ERRORPALOPEN 404 | 
 
 
 
 
 | 1854 | #define IDS_CAP_ERRORPALSAVE 405 | 
 
 
 
 
 | 1855 | #define IDS_CAP_ERRORDIBSAVE 406 | 
 
 
 
 
 | 1856 | #define IDS_CAP_DEFAVIEXT 407 | 
 
 
 
 
 | 1857 | #define IDS_CAP_DEFPALEXT 408 | 
 
 
 
 
 | 1858 | #define IDS_CAP_CANTOPEN 409 | 
 
 
 
 
 | 1859 | #define IDS_CAP_SEQ_MSGSTART 410 | 
 
 
 
 
 | 1860 | #define IDS_CAP_SEQ_MSGSTOP 411 | 
 
 
 
 
 | 1861 |  | 
 
 
 
 
 | 1862 | #define IDS_CAP_VIDEDITERR 412 | 
 
 
 
 
 | 1863 | #define IDS_CAP_READONLYFILE 413 | 
 
 
 
 
 | 1864 | #define IDS_CAP_WRITEERROR 414 | 
 
 
 
 
 | 1865 | #define IDS_CAP_NODISKSPACE 415 | 
 
 
 
 
 | 1866 | #define IDS_CAP_SETFILESIZE 416 | 
 
 
 
 
 | 1867 | #define IDS_CAP_SAVEASPERCENT 417 | 
 
 
 
 
 | 1868 |  | 
 
 
 
 
 | 1869 | #define IDS_CAP_DRIVER_ERROR 418 | 
 
 
 
 
 | 1870 |  | 
 
 
 
 
 | 1871 | #define IDS_CAP_WAVE_OPEN_ERROR 419 | 
 
 
 
 
 | 1872 | #define IDS_CAP_WAVE_ALLOC_ERROR 420 | 
 
 
 
 
 | 1873 | #define IDS_CAP_WAVE_PREPARE_ERROR 421 | 
 
 
 
 
 | 1874 | #define IDS_CAP_WAVE_ADD_ERROR 422 | 
 
 
 
 
 | 1875 | #define IDS_CAP_WAVE_SIZE_ERROR 423 | 
 
 
 
 
 | 1876 |  | 
 
 
 
 
 | 1877 | #define IDS_CAP_VIDEO_OPEN_ERROR 424 | 
 
 
 
 
 | 1878 | #define IDS_CAP_VIDEO_ALLOC_ERROR 425 | 
 
 
 
 
 | 1879 | #define IDS_CAP_VIDEO_PREPARE_ERROR 426 | 
 
 
 
 
 | 1880 | #define IDS_CAP_VIDEO_ADD_ERROR 427 | 
 
 
 
 
 | 1881 | #define IDS_CAP_VIDEO_SIZE_ERROR 428 | 
 
 
 
 
 | 1882 |  | 
 
 
 
 
 | 1883 | #define IDS_CAP_FILE_OPEN_ERROR 429 | 
 
 
 
 
 | 1884 | #define IDS_CAP_FILE_WRITE_ERROR 430 | 
 
 
 
 
 | 1885 | #define IDS_CAP_RECORDING_ERROR 431 | 
 
 
 
 
 | 1886 | #define IDS_CAP_RECORDING_ERROR2 432 | 
 
 
 
 
 | 1887 | #define IDS_CAP_AVI_INIT_ERROR 433 | 
 
 
 
 
 | 1888 | #define IDS_CAP_NO_FRAME_CAP_ERROR 434 | 
 
 
 
 
 | 1889 | #define IDS_CAP_NO_PALETTE_WARN 435 | 
 
 
 
 
 | 1890 | #define IDS_CAP_MCI_CONTROL_ERROR 436 | 
 
 
 
 
 | 1891 | #define IDS_CAP_MCI_CANT_STEP_ERROR 437 | 
 
 
 
 
 | 1892 | #define IDS_CAP_NO_AUDIO_CAP_ERROR 438 | 
 
 
 
 
 | 1893 | #define IDS_CAP_AVI_DRAWDIB_ERROR 439 | 
 
 
 
 
 | 1894 | #define IDS_CAP_COMPRESSOR_ERROR 440 | 
 
 
 
 
 | 1895 | #define IDS_CAP_AUDIO_DROP_ERROR 441 | 
 
 
 
 
 | 1896 | #define IDS_CAP_AUDIO_DROP_COMPERROR 442 | 
 
 
 
 
 | 1897 |  | 
 
 
 
 
 | 1898 | #define IDS_CAP_STAT_LIVE_MODE 500 | 
 
 
 
 
 | 1899 | #define IDS_CAP_STAT_OVERLAY_MODE 501 | 
 
 
 
 
 | 1900 | #define IDS_CAP_STAT_CAP_INIT 502 | 
 
 
 
 
 | 1901 | #define IDS_CAP_STAT_CAP_FINI 503 | 
 
 
 
 
 | 1902 | #define IDS_CAP_STAT_PALETTE_BUILD 504 | 
 
 
 
 
 | 1903 | #define IDS_CAP_STAT_OPTPAL_BUILD 505 | 
 
 
 
 
 | 1904 | #define IDS_CAP_STAT_I_FRAMES 506 | 
 
 
 
 
 | 1905 | #define IDS_CAP_STAT_L_FRAMES 507 | 
 
 
 
 
 | 1906 | #define IDS_CAP_STAT_CAP_L_FRAMES 508 | 
 
 
 
 
 | 1907 | #define IDS_CAP_STAT_CAP_AUDIO 509 | 
 
 
 
 
 | 1908 | #define IDS_CAP_STAT_VIDEOCURRENT 510 | 
 
 
 
 
 | 1909 | #define IDS_CAP_STAT_VIDEOAUDIO 511 | 
 
 
 
 
 | 1910 | #define IDS_CAP_STAT_VIDEOONLY 512 | 
 
 
 
 
 | 1911 | #define IDS_CAP_STAT_FRAMESDROPPED 513 | 
 
 
 
 
 | 1912 | #endif | 
 
 
 
 
 | 1913 |  | 
 
 
 
 
 | 1914 | #ifdef __cplusplus | 
 
 
 
 
 | 1915 | } | 
 
 
 
 
 | 1916 | #endif | 
 
 
 
 
 | 1917 |  | 
 
 
 
 
 | 1918 | #ifndef NOMSACM | 
 
 
 
 
 | 1919 | #include <msacm.h> | 
 
 
 
 
 | 1920 | #endif | 
 
 
 
 
 | 1921 |  | 
 
 
 
 
 | 1922 | #ifdef __cplusplus | 
 
 
 
 
 | 1923 | extern "C" { | 
 
 
 
 
 | 1924 | #endif | 
 
 
 
 
 | 1925 |  | 
 
 
 
 
 | 1926 | #ifdef OFN_READONLY | 
 
 
 
 
 | 1927 | WINBOOL WINAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA lpofn); | 
 
 
 
 
 | 1928 | WINBOOL WINAPI GetSaveFileNamePreviewA(LPOPENFILENAMEA lpofn); | 
 
 
 
 
 | 1929 | WINBOOL WINAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW lpofn); | 
 
 
 
 
 | 1930 | WINBOOL WINAPI GetSaveFileNamePreviewW(LPOPENFILENAMEW lpofn); | 
 
 
 
 
 | 1931 |  | 
 
 
 
 
 | 1932 | #define GetOpenFileNamePreview __MINGW_NAME_AW(GetOpenFileNamePreview) | 
 
 
 
 
 | 1933 | #define GetSaveFileNamePreview __MINGW_NAME_AW(GetSaveFileNamePreview) | 
 
 
 
 
 | 1934 | #endif | 
 
 
 
 
 | 1935 |  | 
 
 
 
 
 | 1936 | #ifndef RC_INVOKED | 
 
 
 
 
 | 1937 | #include "poppack.h" | 
 
 
 
 
 | 1938 | #endif | 
 
 
 
 
 | 1939 |  | 
 
 
 
 
 | 1940 | #ifdef __cplusplus | 
 
 
 
 
 | 1941 | } | 
 
 
 
 
 | 1942 | #endif | 
 
 
 
 
 | 1943 | #endif |