27#define VFWAPIV WINAPIV
45#define ICVERSION 0x0104
51#define ICERR_DONTDRAW 1
52#define ICERR_NEWPALETTE 2
53#define ICERR_GOTOKEYFRAME 3
54#define ICERR_STOPDRAWING 4
56#define ICERR_UNSUPPORTED -1
57#define ICERR_BADFORMAT -2
58#define ICERR_MEMORY -3
59#define ICERR_INTERNAL -4
60#define ICERR_BADFLAGS -5
61#define ICERR_BADPARAM -6
62#define ICERR_BADSIZE -7
63#define ICERR_BADHANDLE -8
64#define ICERR_CANTUPDATE -9
65#define ICERR_ABORT -10
66#define ICERR_ERROR -100
67#define ICERR_BADBITDEPTH -200
68#define ICERR_BADIMAGESIZE -201
70#define ICERR_CUSTOM -400
73#define ICM_USER (DRV_USER+0x0000)
76#define ICM_RESERVED_LOW (DRV_USER+0x1000)
77#define ICM_RESERVED_HIGH (DRV_USER+0x2000)
78#define ICM_RESERVED ICM_RESERVED_LOW
80#define ICM_GETSTATE (ICM_RESERVED+0)
81#define ICM_SETSTATE (ICM_RESERVED+1)
82#define ICM_GETINFO (ICM_RESERVED+2)
84#define ICM_CONFIGURE (ICM_RESERVED+10)
85#define ICM_ABOUT (ICM_RESERVED+11)
88#define ICM_GETDEFAULTQUALITY (ICM_RESERVED+30)
89#define ICM_GETQUALITY (ICM_RESERVED+31)
90#define ICM_SETQUALITY (ICM_RESERVED+32)
92#define ICM_SET (ICM_RESERVED+40)
93#define ICM_GET (ICM_RESERVED+41)
96#define ICM_FRAMERATE mmioFOURCC('F','r','m','R')
97#define ICM_KEYFRAMERATE mmioFOURCC('K','e','y','R')
99#define ICM_COMPRESS_GET_FORMAT (ICM_USER+4)
100#define ICM_COMPRESS_GET_SIZE (ICM_USER+5)
101#define ICM_COMPRESS_QUERY (ICM_USER+6)
102#define ICM_COMPRESS_BEGIN (ICM_USER+7)
103#define ICM_COMPRESS (ICM_USER+8)
104#define ICM_COMPRESS_END (ICM_USER+9)
106#define ICM_DECOMPRESS_GET_FORMAT (ICM_USER+10)
107#define ICM_DECOMPRESS_QUERY (ICM_USER+11)
108#define ICM_DECOMPRESS_BEGIN (ICM_USER+12)
109#define ICM_DECOMPRESS (ICM_USER+13)
110#define ICM_DECOMPRESS_END (ICM_USER+14)
111#define ICM_DECOMPRESS_SET_PALETTE (ICM_USER+29)
112#define ICM_DECOMPRESS_GET_PALETTE (ICM_USER+30)
114#define ICM_DRAW_QUERY (ICM_USER+31)
115#define ICM_DRAW_BEGIN (ICM_USER+15)
116#define ICM_DRAW_GET_PALETTE (ICM_USER+16)
117#define ICM_DRAW_START (ICM_USER+18)
118#define ICM_DRAW_STOP (ICM_USER+19)
119#define ICM_DRAW_END (ICM_USER+21)
120#define ICM_DRAW_GETTIME (ICM_USER+32)
121#define ICM_DRAW (ICM_USER+33)
122#define ICM_DRAW_WINDOW (ICM_USER+34)
123#define ICM_DRAW_SETTIME (ICM_USER+35)
124#define ICM_DRAW_REALIZE (ICM_USER+36)
125#define ICM_DRAW_FLUSH (ICM_USER+37)
126#define ICM_DRAW_RENDERBUFFER (ICM_USER+38)
128#define ICM_DRAW_START_PLAY (ICM_USER+39)
129#define ICM_DRAW_STOP_PLAY (ICM_USER+40)
131#define ICM_DRAW_SUGGESTFORMAT (ICM_USER+50)
132#define ICM_DRAW_CHANGEPALETTE (ICM_USER+51)
134#define ICM_GETBUFFERSWANTED (ICM_USER+41)
136#define ICM_GETDEFAULTKEYFRAMERATE (ICM_USER+42)
138#define ICM_DECOMPRESSEX_BEGIN (ICM_USER+60)
139#define ICM_DECOMPRESSEX_QUERY (ICM_USER+61)
140#define ICM_DECOMPRESSEX (ICM_USER+62)
141#define ICM_DECOMPRESSEX_END (ICM_USER+63)
143#define ICM_COMPRESS_FRAMES_INFO (ICM_USER+70)
144#define ICM_SET_STATUS_PROC (ICM_USER+72)
147#define comptypeDIB mmioFOURCC('D','I','B',' ')
170#define ICCOMPRESS_KEYFRAME 0x00000001L
204#define ICCompressGetFormat(hic, lpbiInput, lpbiOutput) \
206 hic,ICM_COMPRESS_GET_FORMAT,(DWORD_PTR)(LPVOID)(lpbiInput), \
207 (DWORD_PTR)(LPVOID)(lpbiOutput) \
210#define ICCompressGetFormatSize(hic,lpbi) ICCompressGetFormat(hic,lpbi,NULL)
212#define ICCompressBegin(hic, lpbiInput, lpbiOutput) \
214 hic, ICM_COMPRESS_BEGIN, (DWORD_PTR)(LPVOID)(lpbiInput), \
215 (DWORD_PTR)(LPVOID)(lpbiOutput) \
218#define ICCompressGetSize(hic, lpbiInput, lpbiOutput) \
220 hic, ICM_COMPRESS_GET_SIZE, (DWORD_PTR)(LPVOID)(lpbiInput), \
221 (DWORD_PTR)(LPVOID)(lpbiOutput) \
224#define ICCompressQuery(hic, lpbiInput, lpbiOutput) \
226 hic, ICM_COMPRESS_QUERY, (DWORD_PTR)(LPVOID)(lpbiInput), \
227 (DWORD_PTR)(LPVOID)(lpbiOutput) \
230#define ICCompressEnd(hic) ICSendMessage(hic, ICM_COMPRESS_END, 0, 0)
233#define ICCOMPRESSFRAMES_PADDING 0x00000001
257#define ICSTATUS_START 0
258#define ICSTATUS_STATUS 1
259#define ICSTATUS_END 2
260#define ICSTATUS_ERROR 3
261#define ICSTATUS_YIELD 4
268#define ICMODE_COMPRESS 1
269#define ICMODE_DECOMPRESS 2
270#define ICMODE_FASTDECOMPRESS 3
271#define ICMODE_QUERY 4
272#define ICMODE_FASTCOMPRESS 5
276#define ICQUALITY_LOW 0
277#define ICQUALITY_HIGH 10000
278#define ICQUALITY_DEFAULT -1
297#define VIDCF_QUALITY 0x0001
298#define VIDCF_CRUNCH 0x0002
299#define VIDCF_TEMPORAL 0x0004
300#define VIDCF_COMPRESSFRAMES 0x0008
301#define VIDCF_DRAW 0x0010
302#define VIDCF_FASTTEMPORALC 0x0020
303#define VIDCF_FASTTEMPORALD 0x0080
304#define VIDCF_QUALITYTIME 0x0040
306#define VIDCF_FASTTEMPORAL (VIDCF_FASTTEMPORALC|VIDCF_FASTTEMPORALD)
311#define ICMF_ABOUT_QUERY 0x00000001
313#define ICQueryAbout(hic) \
314 (ICSendMessage(hic,ICM_ABOUT,(DWORD_PTR)-1,ICMF_ABOUT_QUERY)==ICERR_OK)
316#define ICAbout(hic, hwnd) ICSendMessage(hic,ICM_ABOUT,(DWORD_PTR)(UINT_PTR)(hwnd),0)
319#define ICMF_CONFIGURE_QUERY 0x00000001
320#define ICQueryConfigure(hic) \
321 (ICSendMessage(hic,ICM_CONFIGURE,(DWORD_PTR)-1,ICMF_CONFIGURE_QUERY)==ICERR_OK)
323#define ICConfigure(hic,hwnd) \
324 ICSendMessage(hic,ICM_CONFIGURE,(DWORD_PTR)(UINT_PTR)(hwnd),0)
327#define ICDECOMPRESS_HURRYUP 0x80000000
328#define ICDECOMPRESS_UPDATE 0x40000000
329#define ICDECOMPRESS_PREROLL 0x20000000
330#define ICDECOMPRESS_NULLFRAME 0x10000000
331#define ICDECOMPRESS_NOTKEYFRAME 0x08000000
371#define ICDecompressBegin(hic, lpbiInput, lpbiOutput) \
373 hic, ICM_DECOMPRESS_BEGIN, (DWORD_PTR)(LPVOID)(lpbiInput), \
374 (DWORD_PTR)(LPVOID)(lpbiOutput) \
377#define ICDecompressQuery(hic, lpbiInput, lpbiOutput) \
379 hic,ICM_DECOMPRESS_QUERY, (DWORD_PTR)(LPVOID)(lpbiInput), \
380 (DWORD_PTR) (LPVOID)(lpbiOutput) \
383#define ICDecompressGetFormat(hic, lpbiInput, lpbiOutput) \
384 ((LONG)ICSendMessage( \
385 hic,ICM_DECOMPRESS_GET_FORMAT, (DWORD_PTR)(LPVOID)(lpbiInput), \
386 (DWORD_PTR)(LPVOID)(lpbiOutput) \
389#define ICDecompressGetFormatSize(hic, lpbi) \
390 ICDecompressGetFormat(hic, lpbi, NULL)
392#define ICDecompressGetPalette(hic, lpbiInput, lpbiOutput) \
394 hic, ICM_DECOMPRESS_GET_PALETTE, (DWORD_PTR)(LPVOID)(lpbiInput), \
395 (DWORD_PTR)(LPVOID)(lpbiOutput) \
398#define ICDecompressSetPalette(hic,lpbiPalette) \
400 hic,ICM_DECOMPRESS_SET_PALETTE, \
401 (DWORD_PTR)(LPVOID)(lpbiPalette),0 \
404#define ICDecompressEnd(hic) ICSendMessage(hic, ICM_DECOMPRESS_END, 0, 0)
522#define ICDecompressExEnd(hic) \
523 ICSendMessage(hic, ICM_DECOMPRESSEX_END, 0, 0)
525#define ICDRAW_QUERY 0x00000001L
526#define ICDRAW_FULLSCREEN 0x00000002L
527#define ICDRAW_HDC 0x00000004L
528#define ICDRAW_ANIMATE 0x00000008L
529#define ICDRAW_CONTINUE 0x00000010L
530#define ICDRAW_MEMORYDC 0x00000020L
531#define ICDRAW_UPDATING 0x00000040L
532#define ICDRAW_RENDER 0x00000080L
533#define ICDRAW_BUFFER 0x00000100L
535#define ICDecompressOpen(fccType, fccHandler, lpbiIn, lpbiOut) \
536 ICLocate(fccType, fccHandler, lpbiIn, lpbiOut, ICMODE_DECOMPRESS)
538#define ICDrawOpen(fccType, fccHandler, lpbiIn) \
539 ICLocate(fccType, fccHandler, lpbiIn, NULL, ICMODE_DRAW)
624#define ICINSTALL_UNICODE 0x8000
625#define ICINSTALL_FUNCTION 0x0001
626#define ICINSTALL_DRIVER 0x0002
627#define ICINSTALL_HDRV 0x0004
628#define ICINSTALL_DRIVERW 0x8002
630#define ICGetState(hic, pv, cb) \
631 ICSendMessage(hic, ICM_GETSTATE, (DWORD_PTR)(LPVOID)(pv), (DWORD_PTR)(cb))
632#define ICSetState(hic, pv, cb) \
633 ICSendMessage(hic, ICM_SETSTATE, (DWORD_PTR)(LPVOID)(pv), (DWORD_PTR)(cb))
634#define ICGetStateSize(hic) \
635 ICGetState(hic, NULL, 0)
651#define ICDrawWindow(hic, prc) \
652 ICSendMessage(hic, ICM_DRAW_WINDOW, (DWORD_PTR)(LPVOID)(prc), sizeof(RECT))
712#define ICDRAW_HURRYUP 0x80000000L
713#define ICDRAW_UPDATE 0x40000000L
714#define ICDRAW_PREROLL 0x20000000L
715#define ICDRAW_NULLFRAME 0x10000000L
716#define ICDRAW_NOTKEYFRAME 0x08000000L
760#define ICDrawQuery(hic, lpbiInput) \
761 ICSendMessage(hic, ICM_DRAW_QUERY, (DWORD_PTR)(LPVOID)(lpbiInput), 0L)
763#define ICDrawChangePalette(hic, lpbiInput) \
764 ICSendMessage(hic, ICM_DRAW_CHANGEPALETTE, (DWORD_PTR)(LPVOID)(lpbiInput), 0L)
766#define ICGetBuffersWanted(hic, lpdwBuffers) \
767 ICSendMessage(hic, ICM_GETBUFFERSWANTED, (DWORD_PTR)(LPVOID)(lpdwBuffers), 0)
769#define ICDrawEnd(hic) \
770 ICSendMessage(hic, ICM_DRAW_END, 0, 0)
772#define ICDrawStart(hic) \
773 ICSendMessage(hic, ICM_DRAW_START, 0, 0)
775#define ICDrawStartPlay(hic, lFrom, lTo) \
776 ICSendMessage(hic, ICM_DRAW_START_PLAY, (DWORD_PTR)(lFrom), (DWORD_PTR)(lTo))
778#define ICDrawStop(hic) \
779 ICSendMessage(hic, ICM_DRAW_STOP, 0, 0)
781#define ICDrawStopPlay(hic) \
782 ICSendMessage(hic, ICM_DRAW_STOP_PLAY, 0, 0)
784#define ICDrawGetTime(hic, lplTime) \
785 ICSendMessage(hic, ICM_DRAW_GETTIME, (DWORD_PTR)(LPVOID)(lplTime), 0)
787#define ICDrawSetTime(hic, lTime) \
788 ICSendMessage(hic, ICM_DRAW_SETTIME, (DWORD_PTR)lTime, 0)
790#define ICDrawRealize(hic, hdc, fBackground) \
791 ICSendMessage(hic, ICM_DRAW_REALIZE, (DWORD_PTR)(UINT_PTR)(HDC)(hdc), (DWORD_PTR)(BOOL)(fBackground))
793#define ICDrawFlush(hic) \
794 ICSendMessage(hic, ICM_DRAW_FLUSH, 0, 0)
796#define ICDrawRenderBuffer(hic) \
797 ICSendMessage(hic, ICM_DRAW_RENDERBUFFER, 0, 0)
812 ic.zStatus = fpfnStatus;
836#define ICMF_COMPVARS_VALID 0x00000001
848#define ICMF_CHOOSE_KEYFRAME 0x0001
849#define ICMF_CHOOSE_DATARATE 0x0002
850#define ICMF_CHOOSE_PREVIEW 0x0004
851#define ICMF_CHOOSE_ALLCOMPRESSORS 0x0008
875#define mmioFOURCC( ch0, ch1, ch2, ch3 ) \
876 ( (DWORD)(BYTE)(ch0) | ( (DWORD)(BYTE)(ch1) << 8 ) | \
877 ( (DWORD)(BYTE)(ch2) << 16 ) | ( (DWORD)(BYTE)(ch3) << 24 ) )
881#define aviTWOCC(ch0, ch1) ((WORD)(BYTE)(ch0) | ((WORD)(BYTE)(ch1) << 8))
886#define ICTYPE_VIDEO mmioFOURCC('v', 'i', 'd', 'c')
887#define ICTYPE_AUDIO mmioFOURCC('a', 'u', 'd', 'c')
889#define formtypeAVI mmioFOURCC('A', 'V', 'I', ' ')
890#define listtypeAVIHEADER mmioFOURCC('h', 'd', 'r', 'l')
891#define ckidAVIMAINHDR mmioFOURCC('a', 'v', 'i', 'h')
892#define listtypeSTREAMHEADER mmioFOURCC('s', 't', 'r', 'l')
893#define ckidSTREAMHEADER mmioFOURCC('s', 't', 'r', 'h')
894#define ckidSTREAMFORMAT mmioFOURCC('s', 't', 'r', 'f')
895#define ckidSTREAMHANDLERDATA mmioFOURCC('s', 't', 'r', 'd')
896#define ckidSTREAMNAME mmioFOURCC('s', 't', 'r', 'n')
898#define listtypeAVIMOVIE mmioFOURCC('m', 'o', 'v', 'i')
899#define listtypeAVIRECORD mmioFOURCC('r', 'e', 'c', ' ')
901#define ckidAVINEWINDEX mmioFOURCC('i', 'd', 'x', '1')
903#define streamtypeANY 0UL
904#define streamtypeVIDEO mmioFOURCC('v', 'i', 'd', 's')
905#define streamtypeAUDIO mmioFOURCC('a', 'u', 'd', 's')
906#define streamtypeMIDI mmioFOURCC('m', 'i', 'd', 's')
907#define streamtypeTEXT mmioFOURCC('t', 'x', 't', 's')
910#define cktypeDIBbits aviTWOCC('d', 'b')
911#define cktypeDIBcompressed aviTWOCC('d', 'c')
912#define cktypePALchange aviTWOCC('p', 'c')
913#define cktypeWAVEbytes aviTWOCC('w', 'b')
916#define ckidAVIPADDING mmioFOURCC('J', 'U', 'N', 'K')
918#define FromHex(n) (((n) >= 'A') ? ((n) + 10 - 'A') : ((n) - '0'))
919#define StreamFromFOURCC(fcc) ((WORD)((FromHex(LOBYTE(LOWORD(fcc))) << 4) + \
920 (FromHex(HIBYTE(LOWORD(fcc))))))
921#define TWOCCFromFOURCC(fcc) HIWORD(fcc)
922#define ToHex(n) ((BYTE)(((n) > 9) ? ((n) - 10 + 'A') : ((n) + '0')))
923#define MAKEAVICKID(tcc, stream) \
924 MAKELONG((ToHex((stream) & 0x0f) << 8) | \
925 (ToHex(((stream) & 0xf0) >> 4)), tcc)
928#define AVIF_HASINDEX 0x00000010
929#define AVIF_MUSTUSEINDEX 0x00000020
930#define AVIF_ISINTERLEAVED 0x00000100
931#define AVIF_TRUSTCKTYPE 0x00000800
932#define AVIF_WASCAPTUREFILE 0x00010000
933#define AVIF_COPYRIGHTED 0x00020000
935#define AVI_HEADERSIZE 2048
955#define AVISF_DISABLED 0x00000001
956#define AVISF_VIDEO_PALCHANGES 0x00010000
976#define AVIIF_LIST 0x00000001
977#define AVIIF_TWOCC 0x00000002
978#define AVIIF_KEYFRAME 0x00000010
979#define AVIIF_FIRSTPART 0x00000020
980#define AVIIF_LASTPART 0x00000040
981#define AVIIF_MIDPART (AVIIF_LASTPART|AVIIF_FIRSTPART)
982#define AVIIF_NOTIME 0x00000100
983#define AVIIF_COMPUSE 0x0FFF0000
999#define AVIIF_KEYFRAME 0x00000010
1001#define AVIGETFRAMEF_BESTDISPLAYFMT 1
1048#define AVISTREAMINFO_DISABLED 0x00000001
1049#define AVISTREAMINFO_FORMATCHANGES 0x00010000
1052#define AVIFILEINFO_HASINDEX 0x00000010
1053#define AVIFILEINFO_MUSTUSEINDEX 0x00000020
1054#define AVIFILEINFO_ISINTERLEAVED 0x00000100
1055#define AVIFILEINFO_TRUSTCKTYPE 0x00000800
1056#define AVIFILEINFO_WASCAPTUREFILE 0x00010000
1057#define AVIFILEINFO_COPYRIGHTED 0x00020000
1060#define AVIFILECAPS_CANREAD 0x00000001
1061#define AVIFILECAPS_CANWRITE 0x00000002
1062#define AVIFILECAPS_ALLKEYFRAMES 0x00000010
1063#define AVIFILECAPS_NOCOMPRESSION 0x00000020
1098#define AVICOMPRESSF_INTERLEAVE 0x00000001
1099#define AVICOMPRESSF_DATARATE 0x00000002
1100#define AVICOMPRESSF_KEYFRAMES 0x00000004
1101#define AVICOMPRESSF_VALID 0x00000008
1117#define FIND_DIR 0x0000000FL
1118#define FIND_NEXT 0x00000001L
1119#define FIND_PREV 0x00000004L
1120#define FIND_FROM_START 0x00000008L
1122#define FIND_TYPE 0x000000F0L
1123#define FIND_KEY 0x00000010L
1124#define FIND_ANY 0x00000020L
1125#define FIND_FORMAT 0x00000040L
1127#define FIND_RET 0x0000F000L
1128#define FIND_POS 0x00000000L
1129#define FIND_LENGTH 0x00001000L
1130#define FIND_OFFSET 0x00002000L
1131#define FIND_SIZE 0x00003000L
1132#define FIND_INDEX 0x00004000L
1136#define DEFINE_AVIGUID(name, l, w1, w2) \
1137 DEFINE_GUID(name, l, w1, w2, 0xC0,0,0,0,0,0,0,0x46)
1151#define INTERFACE IAVIStream
1173#if !defined(__cplusplus) || defined(CINTERFACE)
1175#define IAVIStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1176#define IAVIStream_AddRef(p) (p)->lpVtbl->AddRef(p)
1177#define IAVIStream_Release(p) (p)->lpVtbl->Release(p)
1179#define IAVIStream_Create(p,a,b) (p)->lpVtbl->Create(p,a,b)
1180#define IAVIStream_Info(p,a,b) (p)->lpVtbl->Info(p,a,b)
1181#define IAVIStream_FindSample(p,a,b) (p)->lpVtbl->FindSample(p,a,b)
1182#define IAVIStream_ReadFormat(p,a,b,c) (p)->lpVtbl->ReadFormat(p,a,b,c)
1183#define IAVIStream_SetFormat(p,a,b,c) (p)->lpVtbl->SetFormat(p,a,b,c)
1184#define IAVIStream_Read(p,a,b,c,d,e,f) (p)->lpVtbl->Read(p,a,b,c,d,e,f)
1185#define IAVIStream_Write(p,a,b,c,d,e,f,g) (p)->lpVtbl->Write(p,a,b,c,d,e,f,g)
1186#define IAVIStream_Delete(p,a,b) (p)->lpVtbl->Delete(p,a,b)
1187#define IAVIStream_ReadData(p,a,b,c) (p)->lpVtbl->ReadData(p,a,b,c)
1188#define IAVIStream_WriteData(p,a,b,c) (p)->lpVtbl->WriteData(p,a,b,c)
1189#define IAVIStream_SetInfo(p,a,b) (p)->lpVtbl->SetInfo(p,a,b)
1192#define AVISTREAMREAD_CONVENIENT (-1L)
1219#define AVIStreamInfo WINELIB_NAME_AW(AVIStreamInfo)
1334#define AVIStreamOpenFromFile WINELIB_NAME_AW(AVIStreamOpenFromFile)
1360#define AVIBuildFilter WINELIB_NAME_AW(AVIBuildFilter)
1399#define AVISave WINELIB_NAME_AW(AVISave)
1421#define AVISaveV WINELIB_NAME_AW(AVISaveV)
1428#define AVIFileClose(pavi) \
1429 AVIFileRelease(pavi)
1430#define AVIStreamClose(pavi) \
1431 AVIStreamRelease(pavi);
1432#define AVIStreamEnd(pavi) \
1433 (AVIStreamStart(pavi) + AVIStreamLength(pavi))
1434#define AVIStreamEndTime(pavi) \
1435 AVIStreamSampleToTime(pavi, AVIStreamEnd(pavi))
1436#define AVIStreamFormatSize(pavi, lPos, plSize) \
1437 AVIStreamReadFormat(pavi, lPos, NULL, plSize)
1438#define AVIStreamLengthTime(pavi) \
1439 AVIStreamSampleToTime(pavi, AVIStreamLength(pavi))
1440#define AVIStreamSampleSize(pavi,pos,psize) \
1441 AVIStreamRead(pavi,pos,1,NULL,0,psize,NULL)
1442#define AVIStreamSampleToSample(pavi1, pavi2, samp2) \
1443 AVIStreamTimeToSample(pavi1, AVIStreamSampleToTime(pavi2, samp2))
1444#define AVIStreamStartTime(pavi) \
1445 AVIStreamSampleToTime(pavi, AVIStreamStart(pavi))
1447#define AVIStreamNextSample(pavi, pos) \
1448 AVIStreamFindSample(pavi, pos + 1, FIND_NEXT | FIND_ANY)
1449#define AVIStreamPrevSample(pavi, pos) \
1450 AVIStreamFindSample(pavi, pos - 1, FIND_PREV | FIND_ANY)
1451#define AVIStreamNearestSample(pavi, pos) \
1452 AVIStreamFindSample(pavi, pos, FIND_PREV | FIND_ANY)
1453#define AVStreamNextKeyFrame(pavi,pos) \
1454 AVIStreamFindSample(pavi, pos + 1, FIND_NEXT | FIND_KEY)
1455#define AVStreamPrevKeyFrame(pavi,pos) \
1456 AVIStreamFindSample(pavi, pos - 1, FIND_NEXT | FIND_KEY)
1457#define AVIStreamNearestKeyFrame(pavi,pos) \
1458 AVIStreamFindSample(pavi, pos, FIND_PREV | FIND_KEY)
1459#define AVIStreamIsKeyFrame(pavi, pos) \
1460 (AVIStreamNearestKeyFrame(pavi, pos) == pos)
1465#define INTERFACE IAVIStreaming
1478#if !defined(__cplusplus) || defined(CINTERFACE)
1480#define IAVIStreaming_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1481#define IAVIStreaming_AddRef(p) (p)->lpVtbl->AddRef(p)
1482#define IAVIStreaming_Release(p) (p)->lpVtbl->Release(p)
1484#define IAVIStreaming_Begin(p,a,b,c) (p)->lpVtbl->Begin(p,a,b,c)
1485#define IAVIStreaming_End(p) (p)->lpVtbl->End(p)
1491#define INTERFACE IAVIEditStream
1507#if !defined(__cplusplus) || defined(CINTERFACE)
1509#define IAVIEditStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1510#define IAVIEditStream_AddRef(p) (p)->lpVtbl->AddRef(p)
1511#define IAVIEditStream_Release(p) (p)->lpVtbl->Release(p)
1513#define IAVIEditStream_Cut(p,a,b,c) (p)->lpVtbl->Cut(p,a,b,c)
1514#define IAVIEditStream_Copy(p,a,b,c) (p)->lpVtbl->Copy(p,a,b,c)
1515#define IAVIEditStream_Paste(p,a,b,c,d,e) (p)->lpVtbl->Paste(p,a,b,c,d,e)
1516#define IAVIEditStream_Clone(p,a) (p)->lpVtbl->Clone(p,a)
1517#define IAVIEditStream_SetInfo(p,a,b) (p)->lpVtbl->SetInfo(p,a,b)
1572#define EditStreamSetInfo WINELIB_NAME_AW(EditStreamSetInfo)
1576#define EditStreamSetName WINELIB_NAME_AW(EditStreamSetName)
1582#define INTERFACE IAVIFile
1600#if !defined(__cplusplus) || defined(CINTERFACE)
1602#define IAVIFile_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1603#define IAVIFile_AddRef(p) (p)->lpVtbl->AddRef(p)
1604#define IAVIFile_Release(p) (p)->lpVtbl->Release(p)
1606#define IAVIFile_Info(p,a,b) (p)->lpVtbl->Info(p,a,b)
1607#define IAVIFile_GetStream(p,a,b,c) (p)->lpVtbl->GetStream(p,a,b,c)
1608#define IAVIFile_CreateStream(p,a,b) (p)->lpVtbl->CreateStream(p,a,b)
1609#define IAVIFile_WriteData(p,a,b,c) (p)->lpVtbl->WriteData(p,a,b,c)
1610#define IAVIFile_ReadData(p,a,b,c) (p)->lpVtbl->ReadData(p,a,b,c)
1611#define IAVIFile_EndRecord(p) (p)->lpVtbl->EndRecord(p)
1612#define IAVIFile_DeleteStream(p,a,b) (p)->lpVtbl->DeleteStream(p,a,b)
1634#define AVIFileOpen WINELIB_NAME_AW(AVIFileOpen)
1653#define AVIFileInfo WINELIB_NAME_AW(AVIFileInfo)
1677#define AVIFileCreateStream WINELIB_NAME_AW(AVIFileCreateStream)
1700#define INTERFACE IGetFrame
1715#if !defined(__cplusplus) || defined(CINTERFACE)
1717#define IGetFrame_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1718#define IGetFrame_AddRef(p) (p)->lpVtbl->AddRef(p)
1719#define IGetFrame_Release(p) (p)->lpVtbl->Release(p)
1721#define IGetFrame_GetFrame(p,a) (p)->lpVtbl->GetFrame(p,a)
1722#define IGetFrame_Begin(p,a,b,c) (p)->lpVtbl->Begin(p,a,b,c)
1723#define IGetFrame_End(p) (p)->lpVtbl->End(p)
1724#define IGetFrame_SetFormat(p,a,b,c,d,e,f) (p)->lpVtbl->SetFormat(p,a,b,c,d,e,f)
1734#define GetOpenFileNamePreview WINELIB_NAME_AW(GetOpenFileNamePreview)
1737#define GetSaveFileNamePreview WINELIB_NAME_AW(GetSaveFileNamePreview)
1741#define MAKE_AVIERR(error) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x4000+error)
1743#define AVIERR_UNSUPPORTED MAKE_AVIERR(101)
1744#define AVIERR_BADFORMAT MAKE_AVIERR(102)
1745#define AVIERR_MEMORY MAKE_AVIERR(103)
1746#define AVIERR_INTERNAL MAKE_AVIERR(104)
1747#define AVIERR_BADFLAGS MAKE_AVIERR(105)
1748#define AVIERR_BADPARAM MAKE_AVIERR(106)
1749#define AVIERR_BADSIZE MAKE_AVIERR(107)
1750#define AVIERR_BADHANDLE MAKE_AVIERR(108)
1751#define AVIERR_FILEREAD MAKE_AVIERR(109)
1752#define AVIERR_FILEWRITE MAKE_AVIERR(110)
1753#define AVIERR_FILEOPEN MAKE_AVIERR(111)
1754#define AVIERR_COMPRESSOR MAKE_AVIERR(112)
1755#define AVIERR_NOCOMPRESSOR MAKE_AVIERR(113)
1756#define AVIERR_READONLY MAKE_AVIERR(114)
1757#define AVIERR_NODATA MAKE_AVIERR(115)
1758#define AVIERR_BUFFERTOOSMALL MAKE_AVIERR(116)
1759#define AVIERR_CANTCOMPRESS MAKE_AVIERR(117)
1760#define AVIERR_USERABORT MAKE_AVIERR(198)
1761#define AVIERR_ERROR MAKE_AVIERR(199)
1781#define MCIWndCreate WINELIB_NAME_AW(MCIWndCreate)
1783#define MCIWNDOPENF_NEW 0x0001
1785#define MCIWNDF_NOAUTOSIZEWINDOW 0x0001
1786#define MCIWNDF_NOPLAYBAR 0x0002
1787#define MCIWNDF_NOAUTOSIZEMOVIE 0x0004
1788#define MCIWNDF_NOMENU 0x0008
1789#define MCIWNDF_SHOWNAME 0x0010
1790#define MCIWNDF_SHOWPOS 0x0020
1791#define MCIWNDF_SHOWMODE 0x0040
1792#define MCIWNDF_SHOWALL 0x0070
1794#define MCIWNDF_NOTIFYMODE 0x0100
1795#define MCIWNDF_NOTIFYPOS 0x0200
1796#define MCIWNDF_NOTIFYSIZE 0x0400
1797#define MCIWNDF_NOTIFYERROR 0x1000
1798#define MCIWNDF_NOTIFYALL 0x1F00
1800#define MCIWNDF_NOTIFYANSI 0x0080
1802#define MCIWNDF_NOTIFYMEDIAA 0x0880
1803#define MCIWNDF_NOTIFYMEDIAW 0x0800
1804#define MCIWNDF_NOTIFYMEDIA WINELIB_NAME_AW(MCIWNDF_NOTIFYMEDIA)
1806#define MCIWNDF_RECORD 0x2000
1807#define MCIWNDF_NOERRORDLG 0x4000
1808#define MCIWNDF_NOOPEN 0x8000
1811#define MCIWndSM ::SendMessage
1813#define MCIWndSM SendMessage
1816#define MCIWndCanPlay(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_PLAY,0,0)
1817#define MCIWndCanRecord(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_RECORD,0,0)
1818#define MCIWndCanSave(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_SAVE,0,0)
1819#define MCIWndCanWindow(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_WINDOW,0,0)
1820#define MCIWndCanEject(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_EJECT,0,0)
1821#define MCIWndCanConfig(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_CONFIG,0,0)
1822#define MCIWndPaletteKick(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_PALETTEKICK,0,0)
1824#define MCIWndSave(hWnd,szFile) (LONG)MCIWndSM(hWnd,MCI_SAVE,0,(LPARAM)(LPVOID)(szFile))
1825#define MCIWndSaveDialog(hWnd) MCIWndSave(hWnd,-1)
1827#define MCIWndNew(hWnd,lp) (LONG)MCIWndSM(hWnd,MCIWNDM_NEW,0,(LPARAM)(LPVOID)(lp))
1829#define MCIWndRecord(hWnd) (LONG)MCIWndSM(hWnd,MCI_RECORD,0,0)
1830#define MCIWndOpen(hWnd,sz,f) (LONG)MCIWndSM(hWnd,MCIWNDM_OPEN,(WPARAM)(UINT)(f),(LPARAM)(LPVOID)(sz))
1831#define MCIWndOpenDialog(hWnd) MCIWndOpen(hWnd,-1,0)
1832#define MCIWndClose(hWnd) (LONG)MCIWndSM(hWnd,MCI_CLOSE,0,0)
1833#define MCIWndPlay(hWnd) (LONG)MCIWndSM(hWnd,MCI_PLAY,0,0)
1834#define MCIWndStop(hWnd) (LONG)MCIWndSM(hWnd,MCI_STOP,0,0)
1835#define MCIWndPause(hWnd) (LONG)MCIWndSM(hWnd,MCI_PAUSE,0,0)
1836#define MCIWndResume(hWnd) (LONG)MCIWndSM(hWnd,MCI_RESUME,0,0)
1837#define MCIWndSeek(hWnd,lPos) (LONG)MCIWndSM(hWnd,MCI_SEEK,0,(LPARAM)(LONG)(lPos))
1838#define MCIWndEject(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_EJECT,0,0)
1840#define MCIWndHome(hWnd) MCIWndSeek(hWnd,MCIWND_START)
1841#define MCIWndEnd(hWnd) MCIWndSeek(hWnd,MCIWND_END)
1843#define MCIWndGetSource(hWnd,prc) (LONG)MCIWndSM(hWnd,MCIWNDM_GET_SOURCE,0,(LPARAM)(LPRECT)(prc))
1844#define MCIWndPutSource(hWnd,prc) (LONG)MCIWndSM(hWnd,MCIWNDM_PUT_SOURCE,0,(LPARAM)(LPRECT)(prc))
1846#define MCIWndGetDest(hWnd,prc) (LONG)MCIWndSM(hWnd,MCIWNDM_GET_DEST,0,(LPARAM)(LPRECT)(prc))
1847#define MCIWndPutDest(hWnd,prc) (LONG)MCIWndSM(hWnd,MCIWNDM_PUT_DEST,0,(LPARAM)(LPRECT)(prc))
1849#define MCIWndPlayReverse(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_PLAYREVERSE,0,0)
1850#define MCIWndPlayFrom(hWnd,lPos) (LONG)MCIWndSM(hWnd,MCIWNDM_PLAYFROM,0,(LPARAM)(LONG)(lPos))
1851#define MCIWndPlayTo(hWnd,lPos) (LONG)MCIWndSM(hWnd,MCIWNDM_PLAYTO, 0,(LPARAM)(LONG)(lPos))
1852#define MCIWndPlayFromTo(hWnd,lStart,lEnd) (MCIWndSeek(hWnd,lStart),MCIWndPlayTo(hWnd,lEnd))
1854#define MCIWndGetDeviceID(hWnd) (UINT)MCIWndSM(hWnd,MCIWNDM_GETDEVICEID,0,0)
1855#define MCIWndGetAlias(hWnd) (UINT)MCIWndSM(hWnd,MCIWNDM_GETALIAS,0,0)
1856#define MCIWndGetMode(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_GETMODE,(WPARAM)(UINT)(len),(LPARAM)(LPTSTR)(lp))
1857#define MCIWndGetPosition(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_GETPOSITION,0,0)
1858#define MCIWndGetPositionString(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_GETPOSITION,(WPARAM)(UINT)(len),(LPARAM)(LPTSTR)(lp))
1859#define MCIWndGetStart(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_GETSTART,0,0)
1860#define MCIWndGetLength(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_GETLENGTH,0,0)
1861#define MCIWndGetEnd(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_GETEND,0,0)
1863#define MCIWndStep(hWnd,n) (LONG)MCIWndSM(hWnd,MCI_STEP,0,(LPARAM)(LONG)(n))
1865#define MCIWndDestroy(hWnd) (VOID)MCIWndSM(hWnd,WM_CLOSE,0,0)
1866#define MCIWndSetZoom(hWnd,iZoom) (VOID)MCIWndSM(hWnd,MCIWNDM_SETZOOM,0,(LPARAM)(UINT)(iZoom))
1867#define MCIWndGetZoom(hWnd) (UINT)MCIWndSM(hWnd,MCIWNDM_GETZOOM,0,0)
1868#define MCIWndSetVolume(hWnd,iVol) (LONG)MCIWndSM(hWnd,MCIWNDM_SETVOLUME,0,(LPARAM)(UINT)(iVol))
1869#define MCIWndGetVolume(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_GETVOLUME,0,0)
1870#define MCIWndSetSpeed(hWnd,iSpeed) (LONG)MCIWndSM(hWnd,MCIWNDM_SETSPEED,0,(LPARAM)(UINT)(iSpeed))
1871#define MCIWndGetSpeed(hWnd) (LONG)MCIWndSM(hWnd,MCIWNDM_GETSPEED,0,0)
1872#define MCIWndSetTimeFormat(hWnd,lp) (LONG)MCIWndSM(hWnd,MCIWNDM_SETTIMEFORMAT,0,(LPARAM)(LPTSTR)(lp))
1873#define MCIWndGetTimeFormat(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_GETTIMEFORMAT,(WPARAM)(UINT)(len),(LPARAM)(LPTSTR)(lp))
1874#define MCIWndValidateMedia(hWnd) (VOID)MCIWndSM(hWnd,MCIWNDM_VALIDATEMEDIA,0,0)
1876#define MCIWndSetRepeat(hWnd,f) (void)MCIWndSM(hWnd,MCIWNDM_SETREPEAT,0,(LPARAM)(BOOL)(f))
1877#define MCIWndGetRepeat(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_GETREPEAT,0,0)
1879#define MCIWndUseFrames(hWnd) MCIWndSetTimeFormat(hWnd,TEXT("frames"))
1880#define MCIWndUseTime(hWnd) MCIWndSetTimeFormat(hWnd,TEXT("ms"))
1882#define MCIWndSetActiveTimer(hWnd,active) \
1883 (VOID)MCIWndSM(hWnd,MCIWNDM_SETACTIVETIMER, \
1884 (WPARAM)(UINT)(active),0L)
1885#define MCIWndSetInactiveTimer(hWnd,inactive) \
1886 (VOID)MCIWndSM(hWnd,MCIWNDM_SETINACTIVETIMER, \
1887 (WPARAM)(UINT)(inactive),0L)
1888#define MCIWndSetTimers(hWnd,active,inactive) \
1889 (VOID)MCIWndSM(hWnd,MCIWNDM_SETTIMERS,(WPARAM)(UINT)(active),\
1890 (LPARAM)(UINT)(inactive))
1891#define MCIWndGetActiveTimer(hWnd) \
1892 (UINT)MCIWndSM(hWnd,MCIWNDM_GETACTIVETIMER,0,0L);
1893#define MCIWndGetInactiveTimer(hWnd) \
1894 (UINT)MCIWndSM(hWnd,MCIWNDM_GETINACTIVETIMER,0,0L);
1896#define MCIWndRealize(hWnd,fBkgnd) (LONG)MCIWndSM(hWnd,MCIWNDM_REALIZE,(WPARAM)(BOOL)(fBkgnd),0)
1898#define MCIWndSendString(hWnd,sz) (LONG)MCIWndSM(hWnd,MCIWNDM_SENDSTRING,0,(LPARAM)(LPTSTR)(sz))
1899#define MCIWndReturnString(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_RETURNSTRING,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp))
1900#define MCIWndGetError(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_GETERROR,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp))
1902#define MCIWndGetPalette(hWnd) (HPALETTE)MCIWndSM(hWnd,MCIWNDM_GETPALETTE,0,0)
1903#define MCIWndSetPalette(hWnd,hpal) (LONG)MCIWndSM(hWnd,MCIWNDM_SETPALETTE,(WPARAM)(HPALETTE)(hpal),0)
1905#define MCIWndGetFileName(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_GETFILENAME,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp))
1906#define MCIWndGetDevice(hWnd,lp,len) (LONG)MCIWndSM(hWnd,MCIWNDM_GETDEVICE,(WPARAM)(UINT)(len),(LPARAM)(LPVOID)(lp))
1908#define MCIWndGetStyles(hWnd) (UINT)MCIWndSM(hWnd,MCIWNDM_GETSTYLES,0,0L)
1909#define MCIWndChangeStyles(hWnd,mask,value) (LONG)MCIWndSM(hWnd,MCIWNDM_CHANGESTYLES,(WPARAM)(UINT)(mask),(LPARAM)(LONG)(value))
1911#define MCIWndOpenInterface(hWnd,pUnk) (LONG)MCIWndSM(hWnd,MCIWNDM_OPENINTERFACE,0,(LPARAM)(LPUNKNOWN)(pUnk))
1913#define MCIWndSetOwner(hWnd,hWndP) (LONG)MCIWndSM(hWnd,MCIWNDM_SETOWNER,(WPARAM)(hWndP),0)
1915#define MCIWNDM_GETDEVICEID (WM_USER + 100)
1916#define MCIWNDM_GETSTART (WM_USER + 103)
1917#define MCIWNDM_GETLENGTH (WM_USER + 104)
1918#define MCIWNDM_GETEND (WM_USER + 105)
1919#define MCIWNDM_EJECT (WM_USER + 107)
1920#define MCIWNDM_SETZOOM (WM_USER + 108)
1921#define MCIWNDM_GETZOOM (WM_USER + 109)
1922#define MCIWNDM_SETVOLUME (WM_USER + 110)
1923#define MCIWNDM_GETVOLUME (WM_USER + 111)
1924#define MCIWNDM_SETSPEED (WM_USER + 112)
1925#define MCIWNDM_GETSPEED (WM_USER + 113)
1926#define MCIWNDM_SETREPEAT (WM_USER + 114)
1927#define MCIWNDM_GETREPEAT (WM_USER + 115)
1928#define MCIWNDM_REALIZE (WM_USER + 118)
1929#define MCIWNDM_VALIDATEMEDIA (WM_USER + 121)
1930#define MCIWNDM_PLAYFROM (WM_USER + 122)
1931#define MCIWNDM_PLAYTO (WM_USER + 123)
1932#define MCIWNDM_GETPALETTE (WM_USER + 126)
1933#define MCIWNDM_SETPALETTE (WM_USER + 127)
1934#define MCIWNDM_SETTIMERS (WM_USER + 129)
1935#define MCIWNDM_SETACTIVETIMER (WM_USER + 130)
1936#define MCIWNDM_SETINACTIVETIMER (WM_USER + 131)
1937#define MCIWNDM_GETACTIVETIMER (WM_USER + 132)
1938#define MCIWNDM_GETINACTIVETIMER (WM_USER + 133)
1939#define MCIWNDM_CHANGESTYLES (WM_USER + 135)
1940#define MCIWNDM_GETSTYLES (WM_USER + 136)
1941#define MCIWNDM_GETALIAS (WM_USER + 137)
1942#define MCIWNDM_PLAYREVERSE (WM_USER + 139)
1943#define MCIWNDM_GET_SOURCE (WM_USER + 140)
1944#define MCIWNDM_PUT_SOURCE (WM_USER + 141)
1945#define MCIWNDM_GET_DEST (WM_USER + 142)
1946#define MCIWNDM_PUT_DEST (WM_USER + 143)
1947#define MCIWNDM_CAN_PLAY (WM_USER + 144)
1948#define MCIWNDM_CAN_WINDOW (WM_USER + 145)
1949#define MCIWNDM_CAN_RECORD (WM_USER + 146)
1950#define MCIWNDM_CAN_SAVE (WM_USER + 147)
1951#define MCIWNDM_CAN_EJECT (WM_USER + 148)
1952#define MCIWNDM_CAN_CONFIG (WM_USER + 149)
1953#define MCIWNDM_PALETTEKICK (WM_USER + 150)
1954#define MCIWNDM_OPENINTERFACE (WM_USER + 151)
1955#define MCIWNDM_SETOWNER (WM_USER + 152)
1957#define MCIWNDM_SENDSTRINGA (WM_USER + 101)
1958#define MCIWNDM_GETPOSITIONA (WM_USER + 102)
1959#define MCIWNDM_GETMODEA (WM_USER + 106)
1960#define MCIWNDM_SETTIMEFORMATA (WM_USER + 119)
1961#define MCIWNDM_GETTIMEFORMATA (WM_USER + 120)
1962#define MCIWNDM_GETFILENAMEA (WM_USER + 124)
1963#define MCIWNDM_GETDEVICEA (WM_USER + 125)
1964#define MCIWNDM_GETERRORA (WM_USER + 128)
1965#define MCIWNDM_NEWA (WM_USER + 134)
1966#define MCIWNDM_RETURNSTRINGA (WM_USER + 138)
1967#define MCIWNDM_OPENA (WM_USER + 153)
1969#define MCIWNDM_SENDSTRINGW (WM_USER + 201)
1970#define MCIWNDM_GETPOSITIONW (WM_USER + 202)
1971#define MCIWNDM_GETMODEW (WM_USER + 206)
1972#define MCIWNDM_SETTIMEFORMATW (WM_USER + 219)
1973#define MCIWNDM_GETTIMEFORMATW (WM_USER + 220)
1974#define MCIWNDM_GETFILENAMEW (WM_USER + 224)
1975#define MCIWNDM_GETDEVICEW (WM_USER + 225)
1976#define MCIWNDM_GETERRORW (WM_USER + 228)
1977#define MCIWNDM_NEWW (WM_USER + 234)
1978#define MCIWNDM_RETURNSTRINGW (WM_USER + 238)
1979#define MCIWNDM_OPENW (WM_USER + 252)
1981#define MCIWNDM_SENDSTRING WINELIB_NAME_AW(MCIWNDM_SENDSTRING)
1982#define MCIWNDM_GETPOSITION WINELIB_NAME_AW(MCIWNDM_GETPOSITION)
1983#define MCIWNDM_GETMODE WINELIB_NAME_AW(MCIWNDM_GETMODE)
1984#define MCIWNDM_SETTIMEFORMAT WINELIB_NAME_AW(MCIWNDM_SETTIMEFORMAT)
1985#define MCIWNDM_GETTIMEFORMAT WINELIB_NAME_AW(MCIWNDM_GETTIMEFORMAT)
1986#define MCIWNDM_GETFILENAME WINELIB_NAME_AW(MCIWNDM_GETFILENAME)
1987#define MCIWNDM_GETDEVICE WINELIB_NAME_AW(MCIWNDM_GETDEVICE)
1988#define MCIWNDM_GETERROR WINELIB_NAME_AW(MCIWNDM_GETERROR)
1989#define MCIWNDM_NEW WINELIB_NAME_AW(MCIWNDM_NEW)
1990#define MCIWNDM_RETURNSTRING WINELIB_NAME_AW(MCIWNDM_RETURNSTRING)
1991#define MCIWNDM_OPEN WINELIB_NAME_AW(MCIWNDM_OPEN)
1993#define MCIWNDM_NOTIFYMODE (WM_USER + 200)
1994#define MCIWNDM_NOTIFYPOS (WM_USER + 201)
1995#define MCIWNDM_NOTIFYSIZE (WM_USER + 202)
1996#define MCIWNDM_NOTIFYMEDIA (WM_USER + 203)
1997#define MCIWNDM_NOTIFYERROR (WM_USER + 205)
1999#define MCIWND_START -1
2000#define MCIWND_END -2
2057#define DDF_UPDATE 0x0002
2058#define DDF_SAME_HDC 0x0004
2059#define DDF_SAME_DRAW 0x0008
2060#define DDF_DONTDRAW 0x0010
2061#define DDF_ANIMATE 0x0020
2062#define DDF_BUFFER 0x0040
2063#define DDF_JUSTDRAWIT 0x0080
2064#define DDF_FULLSCREEN 0x0100
2065#define DDF_BACKGROUNDPAL 0x0200
2066#define DDF_NOTKEYFRAME 0x0400
2067#define DDF_HURRYUP 0x0800
2068#define DDF_HALFTONE 0x1000
2070#define DDF_PREROLL DDF_DONTDRAW
2071#define DDF_SAME_DIB DDF_SAME_DRAW
2072#define DDF_SAME_SIZE DDF_SAME_DRAW
2096#define DrawDibUpdate(hdd, hdc, x, y) \
2097 DrawDibDraw(hdd, hdc, x, y, 0, 0, NULL, NULL, 0, 0, 0, 0, DDF_UPDATE)
2104#define PD_CAN_DRAW_DIB 0x0001
2105#define PD_CAN_STRETCHDIB 0x0002
2106#define PD_STRETCHDIB_1_1_OK 0x0004
2107#define PD_STRETCHDIB_1_2_OK 0x0008
2108#define PD_STRETCHDIB_1_N_OK 0x0010
2120#define DV_ERR_OK (0)
2121#define DV_ERR_BASE (1)
2122#define DV_ERR_NONSPECIFIC (DV_ERR_BASE)
2123#define DV_ERR_BADFORMAT (DV_ERR_BASE + 1)
2124#define DV_ERR_STILLPLAYING (DV_ERR_BASE + 2)
2125#define DV_ERR_UNPREPARED (DV_ERR_BASE + 3)
2126#define DV_ERR_SYNC (DV_ERR_BASE + 4)
2127#define DV_ERR_TOOMANYCHANNELS (DV_ERR_BASE + 5)
2128#define DV_ERR_NOTDETECTED (DV_ERR_BASE + 6)
2129#define DV_ERR_BADINSTALL (DV_ERR_BASE + 7)
2130#define DV_ERR_CREATEPALETTE (DV_ERR_BASE + 8)
2131#define DV_ERR_SIZEFIELD (DV_ERR_BASE + 9)
2132#define DV_ERR_PARAM1 (DV_ERR_BASE + 10)
2133#define DV_ERR_PARAM2 (DV_ERR_BASE + 11)
2134#define DV_ERR_CONFIG1 (DV_ERR_BASE + 12)
2135#define DV_ERR_CONFIG2 (DV_ERR_BASE + 13)
2136#define DV_ERR_FLAGS (DV_ERR_BASE + 14)
2137#define DV_ERR_13 (DV_ERR_BASE + 15)
2139#define DV_ERR_NOTSUPPORTED (DV_ERR_BASE + 16)
2140#define DV_ERR_NOMEM (DV_ERR_BASE + 17)
2141#define DV_ERR_ALLOCATED (DV_ERR_BASE + 18)
2142#define DV_ERR_BADDEVICEID (DV_ERR_BASE + 19)
2143#define DV_ERR_INVALHANDLE (DV_ERR_BASE + 20)
2144#define DV_ERR_BADERRNUM (DV_ERR_BASE + 21)
2145#define DV_ERR_NO_BUFFERS (DV_ERR_BASE + 22)
2147#define DV_ERR_MEM_CONFLICT (DV_ERR_BASE + 23)
2148#define DV_ERR_IO_CONFLICT (DV_ERR_BASE + 24)
2149#define DV_ERR_DMA_CONFLICT (DV_ERR_BASE + 25)
2150#define DV_ERR_INT_CONFLICT (DV_ERR_BASE + 26)
2151#define DV_ERR_PROTECT_ONLY (DV_ERR_BASE + 27)
2152#define DV_ERR_LASTERROR (DV_ERR_BASE + 27)
2154#define DV_ERR_USER_MSG (DV_ERR_BASE + 1000)
2157#define MM_DRVM_OPEN 0x3D0
2158#define MM_DRVM_CLOSE 0x3D1
2159#define MM_DRVM_DATA 0x3D2
2160#define MM_DRVM_ERROR 0x3D3
2162#define DV_VM_OPEN MM_DRVM_OPEN
2163#define DV_VM_CLOSE MM_DRVM_CLOSE
2164#define DV_VM_DATA MM_DRVM_DATA
2165#define DV_VM_ERROR MM_DRVM_ERROR
2178#define VHDR_DONE 0x00000001
2179#define VHDR_PREPARED 0x00000002
2180#define VHDR_INQUEUE 0x00000004
2181#define VHDR_KEYFRAME 0x00000008
2195#define VCAPS_OVERLAY 0x00000001
2196#define VCAPS_SRC_CAN_CLIP 0x00000002
2197#define VCAPS_DST_CAN_CLIP 0x00000004
2198#define VCAPS_CAN_SCALE 0x00000008
2200#define VIDEO_EXTERNALIN 0x0001
2201#define VIDEO_EXTERNALOUT 0x0002
2202#define VIDEO_IN 0x0004
2203#define VIDEO_OUT 0x0008
2205#define VIDEO_DLG_QUERY 0x0010
2207#define VIDEO_CONFIGURE_QUERY 0x8000
2209#define VIDEO_CONFIGURE_SET 0x1000
2211#define VIDEO_CONFIGURE_GET 0x2000
2212#define VIDEO_CONFIGURE_QUERYSIZE 0x0001
2214#define VIDEO_CONFIGURE_CURRENT 0x0010
2215#define VIDEO_CONFIGURE_NOMINAL 0x0020
2216#define VIDEO_CONFIGURE_MIN 0x0040
2217#define VIDEO_CONFIGURE_MAX 0x0080
2219#define DVM_USER 0x4000
2221#define DVM_CONFIGURE_START 0x1000
2222#define DVM_CONFIGURE_END 0x1FFF
2224#define DVM_PALETTE (DVM_CONFIGURE_START + 1)
2225#define DVM_FORMAT (DVM_CONFIGURE_START + 2)
2226#define DVM_PALETTERGB555 (DVM_CONFIGURE_START + 3)
2227#define DVM_SRC_RECT (DVM_CONFIGURE_START + 4)
2228#define DVM_DST_RECT (DVM_CONFIGURE_START + 5)
2230#define AVICapSM(hwnd,m,w,l) ((IsWindow(hwnd)) ? SendMessage(hwnd,m,w,l) : 0)
2232#define WM_CAP_START WM_USER
2234#define WM_CAP_UNICODE_START WM_USER+100
2236#define WM_CAP_GET_CAPSTREAMPTR (WM_CAP_START + 1)
2238#define WM_CAP_SET_CALLBACK_ERRORW (WM_CAP_UNICODE_START + 2)
2239#define WM_CAP_SET_CALLBACK_STATUSW (WM_CAP_UNICODE_START + 3)
2240#define WM_CAP_SET_CALLBACK_ERRORA (WM_CAP_START + 2)
2241#define WM_CAP_SET_CALLBACK_STATUSA (WM_CAP_START+ 3)
2243#define WM_CAP_SET_CALLBACK_ERROR WINELIB_NAME_AW(WM_CAP_SET_CALLBACK_ERROR)
2244#define WM_CAP_SET_CALLBACK_STATUS WINELIB_NAME_AW(WM_CAP_SET_CALLBACK_STATUS)
2246#define WM_CAP_SET_CALLBACK_YIELD (WM_CAP_START + 4)
2247#define WM_CAP_SET_CALLBACK_FRAME (WM_CAP_START + 5)
2248#define WM_CAP_SET_CALLBACK_VIDEOSTREAM (WM_CAP_START + 6)
2249#define WM_CAP_SET_CALLBACK_WAVESTREAM (WM_CAP_START + 7)
2250#define WM_CAP_GET_USER_DATA (WM_CAP_START + 8)
2251#define WM_CAP_SET_USER_DATA (WM_CAP_START + 9)
2253#define WM_CAP_DRIVER_CONNECT (WM_CAP_START + 10)
2254#define WM_CAP_DRIVER_DISCONNECT (WM_CAP_START + 11)
2256#define WM_CAP_DRIVER_GET_NAMEA (WM_CAP_START + 12)
2257#define WM_CAP_DRIVER_GET_VERSIONA (WM_CAP_START + 13)
2258#define WM_CAP_DRIVER_GET_NAMEW (WM_CAP_UNICODE_START + 12)
2259#define WM_CAP_DRIVER_GET_VERSIONW (WM_CAP_UNICODE_START + 13)
2261#define WM_CAP_DRIVER_GET_NAME WINELIB_NAME_AW(WM_CAP_DRIVER_GET_NAME)
2262#define WM_CAP_DRIVER_GET_VERSION WINELIB_NAME_AW(WM_CAP_DRIVER_GET_VERSION)
2264#define WM_CAP_DRIVER_GET_CAPS (WM_CAP_START + 14)
2266#define WM_CAP_FILE_SET_CAPTURE_FILEA (WM_CAP_START + 20)
2267#define WM_CAP_FILE_GET_CAPTURE_FILEA (WM_CAP_START + 21)
2268#define WM_CAP_FILE_ALLOCATE (WM_CAP_START + 22)
2269#define WM_CAP_FILE_SAVEASA (WM_CAP_START + 23)
2270#define WM_CAP_FILE_SET_INFOCHUNK (WM_CAP_START + 24)
2271#define WM_CAP_FILE_SAVEDIBA (WM_CAP_START + 25)
2272#define WM_CAP_FILE_SET_CAPTURE_FILEW (WM_CAP_UNICODE_START + 20)
2273#define WM_CAP_FILE_GET_CAPTURE_FILEW (WM_CAP_UNICODE_START + 21)
2274#define WM_CAP_FILE_SAVEASW (WM_CAP_UNICODE_START + 23)
2275#define WM_CAP_FILE_SAVEDIBW (WM_CAP_UNICODE_START + 25)
2277#define WM_CAP_FILE_SET_CAPTURE_FILE WINELIB_NAME_AW(WM_CAP_FILE_SET_CAPTURE_FILE)
2278#define WM_CAP_FILE_GET_CAPTURE_FILE WINELIB_NAME_AW(WM_CAP_FILE_GET_CAPTURE_FILE)
2279#define WM_CAP_FILE_SAVEAS WINELIB_NAME_AW(WM_CAP_FILE_SAVEAS)
2280#define WM_CAP_FILE_SAVEDIB WINELIB_NAME_AW(WM_CAP_FILE_SAVEDIB)
2282#define WM_CAP_EDIT_COPY (WM_CAP_START + 30)
2284#define WM_CAP_SET_AUDIOFORMAT (WM_CAP_START + 35)
2285#define WM_CAP_GET_AUDIOFORMAT (WM_CAP_START + 36)
2287#define WM_CAP_DLG_VIDEOFORMAT (WM_CAP_START + 41)
2288#define WM_CAP_DLG_VIDEOSOURCE (WM_CAP_START + 42)
2289#define WM_CAP_DLG_VIDEODISPLAY (WM_CAP_START + 43)
2290#define WM_CAP_GET_VIDEOFORMAT (WM_CAP_START + 44)
2291#define WM_CAP_SET_VIDEOFORMAT (WM_CAP_START + 45)
2292#define WM_CAP_DLG_VIDEOCOMPRESSION (WM_CAP_START + 46)
2294#define WM_CAP_SET_PREVIEW (WM_CAP_START + 50)
2295#define WM_CAP_SET_OVERLAY (WM_CAP_START + 51)
2296#define WM_CAP_SET_PREVIEWRATE (WM_CAP_START + 52)
2297#define WM_CAP_SET_SCALE (WM_CAP_START + 53)
2298#define WM_CAP_GET_STATUS (WM_CAP_START + 54)
2299#define WM_CAP_SET_SCROLL (WM_CAP_START + 55)
2301#define WM_CAP_GRAB_FRAME (WM_CAP_START + 60)
2302#define WM_CAP_GRAB_FRAME_NOSTOP (WM_CAP_START + 61)
2304#define WM_CAP_SEQUENCE (WM_CAP_START + 62)
2305#define WM_CAP_SEQUENCE_NOFILE (WM_CAP_START + 63)
2306#define WM_CAP_SET_SEQUENCE_SETUP (WM_CAP_START + 64)
2307#define WM_CAP_GET_SEQUENCE_SETUP (WM_CAP_START + 65)
2309#define WM_CAP_SET_MCI_DEVICEA (WM_CAP_START + 66)
2310#define WM_CAP_GET_MCI_DEVICEA (WM_CAP_START + 67)
2311#define WM_CAP_SET_MCI_DEVICEW (WM_CAP_UNICODE_START + 66)
2312#define WM_CAP_GET_MCI_DEVICEW (WM_CAP_UNICODE_START + 67)
2314#define WM_CAP_SET_MCI_DEVICE WINELIB_NAME_AW(WM_CAP_SET_MCI_DEVICE)
2315#define WM_CAP_GET_MCI_DEVICE WINELIB_NAME_AW(WM_CAP_GET_MCI_DEVICE)
2317#define WM_CAP_STOP (WM_CAP_START + 68)
2318#define WM_CAP_ABORT (WM_CAP_START + 69)
2320#define WM_CAP_SINGLE_FRAME_OPEN (WM_CAP_START + 70)
2321#define WM_CAP_SINGLE_FRAME_CLOSE (WM_CAP_START + 71)
2322#define WM_CAP_SINGLE_FRAME (WM_CAP_START + 72)
2324#define WM_CAP_PAL_OPENA (WM_CAP_START + 80)
2325#define WM_CAP_PAL_SAVEA (WM_CAP_START + 81)
2326#define WM_CAP_PAL_OPENW (WM_CAP_UNICODE_START + 80)
2327#define WM_CAP_PAL_SAVEW (WM_CAP_UNICODE_START + 81)
2329#define WM_CAP_PAL_OPEN WINELIB_NAME_AW(WM_CAP_PAL_OPEN)
2330#define WM_CAP_PAL_SAVE WINELIB_NAME_AW(WM_CAP_PAL_SAVE)
2332#define WM_CAP_PAL_PASTE (WM_CAP_START + 82)
2333#define WM_CAP_PAL_AUTOCREATE (WM_CAP_START + 83)
2334#define WM_CAP_PAL_MANUALCREATE (WM_CAP_START + 84)
2336#define WM_CAP_SET_CALLBACK_CAPCONTROL (WM_CAP_START + 85)
2338#define WM_CAP_UNICODE_END WM_CAP_PAL_SAVEW
2339#define WM_CAP_END WM_CAP_UNICODE_END
2469#define capCreateCaptureWindow WINELIB_NAME_AW(capCreateCaptureWindow)
2489#define capGetDriverDescription WINELIB_NAME_AW(capGetDriverDescription)
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char UINT32 const char BOOLEAN Begin
BOOL Delete(LPCTSTR ServiceName)
#define DECLARE_INTERFACE_(i, b)
static VOID Paste(PGUI_CONSOLE_DATA GuiData)
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
static const WCHAR szDescription[]
LPAVICOMPRESSOPTIONS * ppOptions
VOID Copy(PVOID Src, PVOID Dst, ULONG NumBytes)
static VOID WriteData(_In_ UCHAR Data)
static BYTE * GetData(BYTE *pData, ULONG *pLength)
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
GLdouble GLdouble GLdouble GLdouble top
#define DECLARE_HANDLE(name)
LRESULT(CALLBACK * DRIVERPROC)(DWORD_PTR, HDRVR, UINT, LPARAM, LPARAM)
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static HRESULT QueryInterface(REFIID, void **)
static ULONG WINAPI AddRef(IStream *iface)
BOOL WINAPI GetSaveFileNamePreviewW(LPOPENFILENAMEW lpofn)
LRESULT VFWAPI ICGetInfo(HIC hic, ICINFO *picinfo, DWORD cb)
BOOL WINAPI GetSaveFileNamePreviewA(LPOPENFILENAMEA lpofn)
BOOL WINAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA lpofn)
BOOL WINAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW lpofn)
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
enum _tagppResult ppResult
#define _In_reads_bytes_(s)
#define _Inout_updates_(s)
#define _Field_size_bytes_(s)
#define _Out_writes_bytes_opt_(s)
#define _Out_writes_bytes_to_(s, c)
#define _Out_writes_bytes_to_opt_(s, c)
#define _Out_writes_bytes_(s)
#define _In_reads_bytes_opt_(s)
static const WCHAR szName[]
_In_ LONG _In_reads_bytes_(len) LPVOID lpBits
LPBITMAPINFOHEADER lpbiInput
_In_ LONG _Out_writes_bytes_(len) LPVOID lpBits
LPBITMAPINFOHEADER lpbiOutput
LPBITMAPINFOHEADER lpbiOutput
_Field_size_bytes_(lpbiOutput->biSizeImage) LPVOID lpOutput
LPBITMAPINFOHEADER lpbiSrc
LPBITMAPINFOHEADER lpbiDst
LPBITMAPINFOHEADER lpbiInput
_Field_size_bytes_(lpbiInput->biSizeImage) LPVOID lpInput
LPBITMAPINFOHEADER lpbiIn
LPBITMAPINFOHEADER lpbiSuggest
DWORD dwSuggestedBufferSize
DWORD dwSuggestedBufferSize
DWORD dwFormatChangeCount
DWORD dwSuggestedBufferSize
DWORD dwSuggestedBufferSize
DWORD dwFormatChangeCount
DWORD dwSuggestedBufferSize
DWORD dwPaddingGranularity
BOOL fDriverSuppliesPalettes
DWORD dwCurrentVideoFramesDropped
DWORD dwCurrentVideoFrame
DWORD dwCurrentTimeElapsedMS
BOOL fUsingDefaultPalette
DWORD dwCurrentWaveSamples
BOOL fMakeUserHitOKToCapture
UINT wPercentDropForError
DWORD dwRequestMicroSecPerFrame
UINT wStepCaptureAverageFrames
struct AVICOMPRESSOPTIONS * PAVICOMPRESSOPTIONS
struct _MainAVIHeader MainAVIHeader
struct videohdr_tag VIDEOHDR
HRESULT WINAPI AVIFileReadData(_In_ PAVIFILE pfile, _In_ DWORD fcc, _Out_writes_bytes_to_(*size, *size) LPVOID lp, _Inout_ LPLONG size)
LPVOID VFWAPI DrawDibGetBuffer(_In_ HDRAWDIB hdd, _Out_ LPBITMAPINFOHEADER lpbi, _In_ DWORD dwSize, _In_ DWORD dwFlags)
struct _AVIFILEINFOW * PAVIFILEINFOW
BOOL VFWAPI DrawDibClose(_In_ HDRAWDIB hdd)
HRESULT CDECL AVISaveW(LPCWSTR szFile, _In_opt_ CLSID *pclsidHandler, _In_ AVISAVECALLBACK lpfnCallback, _In_ int nStreams, _In_ PAVISTREAM pavi, _In_ LPAVICOMPRESSOPTIONS lpOptions,...)
HRESULT WINAPI AVIFileCreateStreamA(_In_ PAVIFILE pfile, _Outptr_ PAVISTREAM *ppavi, _In_ AVISTREAMINFOA *psi)
static LRESULT VFWAPI ICDecompressEx(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LPBITMAPINFOHEADER lpbiSrc, _In_reads_bytes_(lpbiSrc->biSizeImage) LPVOID lpSrc, _In_ int xSrc, _In_ int ySrc, _In_ int dxSrc, _In_ int dySrc, _In_ LPBITMAPINFOHEADER lpbiDst, _Out_writes_bytes_(lpbiDst->biSizeImage) LPVOID lpDst, _In_ int xDst, _In_ int yDst, _In_ int dxDst, _In_ int dyDst)
LRESULT(CALLBACK * CAPERRORCALLBACKA)(_In_ HWND hWnd, _In_ int nID, LPCSTR lpsz)
HRESULT WINAPI AVIFileEndRecord(_In_ PAVIFILE pfile)
static LRESULT VFWAPI ICDrawSuggestFormat(_In_ HIC hic, _In_ LPBITMAPINFOHEADER lpbiIn, _Out_ LPBITMAPINFOHEADER lpbiOut, _In_ int dxSrc, _In_ int dySrc, _In_ int dxDst, _In_ int dyDst, _In_ HIC hicDecomp)
struct _AVISTREAMINFOW AVISTREAMINFOW
struct _AVISTREAMINFOW * PAVISTREAMINFOW
BOOL VFWAPI DrawDibSetPalette(_In_ HDRAWDIB hdd, _In_opt_ HPALETTE hpal)
HPALETTE VFWAPI DrawDibGetPalette(_In_ HDRAWDIB hdd)
HWND VFWAPIV MCIWndCreateA(_In_opt_ HWND, _In_opt_ HINSTANCE, _In_ DWORD, _In_opt_ LPCSTR)
struct tagCaptureParms * PCAPTUREPARMS
BOOL WINAPI AVISaveOptions(_In_ HWND hWnd, _In_ UINT uFlags, _In_ INT nStream, _In_reads_(nStream) PAVISTREAM *ppavi, _Inout_updates_(nStream) LPAVICOMPRESSOPTIONS *ppOptions)
struct videohdr_tag * LPVIDEOHDR
HWND VFWAPI capCreateCaptureWindowW(LPCWSTR, _In_ DWORD, _In_ INT, _In_ INT, _In_ INT, _In_ INT, _In_opt_ HWND, _In_ INT)
BOOL VFWAPIV MCIWndRegisterClass(void)
LRESULT VFWAPI ICClose(_In_ HIC hic)
static LRESULT VFWAPI ICSetStatusProc(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LRESULT lParam, _In_ LONG(CALLBACK *fpfnStatus)(_In_ LPARAM, _In_ UINT, _In_ LONG))
struct tagCaptureParms CAPTUREPARMS
BOOL VFWAPI ICInstall(_In_ DWORD fccType, _In_ DWORD fccHandler, _In_ LPARAM lParam, _In_ LPSTR szDesc, _In_ UINT wFlags)
#define ICM_GETDEFAULTKEYFRAMERATE
BOOL VFWAPI DrawDibDraw(_In_ HDRAWDIB hdd, _In_ HDC hdc, _In_ INT xDst, _In_ INT yDst, _In_ INT dxDst, _In_ INT dyDst, _In_opt_ LPBITMAPINFOHEADER lpbi, _In_opt_ LPVOID lpBits, _In_ INT xSrc, _In_ INT ySrc, _In_ INT dxSrc, _In_ INT dySrc, _In_ UINT wFlags)
LONG WINAPI AVIStreamSampleToTime(_In_ PAVISTREAM pstream, _In_ LONG lSample)
struct DRAWDIBTIME * LPDRAWDIBTIME
BOOL VFWAPI DrawDibChangePalette(_In_ HDRAWDIB hdd, _In_ int iStart, _In_ int iLen, _In_reads_(iLen) LPPALETTEENTRY lppe)
HRESULT WINAPI AVIMakeFileFromStreams(_Outptr_ PAVIFILE *ppfile, _In_ int nStreams, _In_reads_(nStreams) PAVISTREAM *ppStreams)
HRESULT WINAPI AVIStreamReadFormat(_In_ PAVISTREAM iface, _In_ LONG pos, _Out_writes_bytes_to_opt_(*formatsize, *formatsize) LPVOID format, _Inout_ LONG *formatsize)
HRESULT WINAPI AVIMakeStreamFromClipboard(UINT cfFormat, _In_ HANDLE hGlobal, _Outptr_ PAVISTREAM *ppstream)
HIC VFWAPI ICOpenFunction(_In_ DWORD fccType, _In_ DWORD fccHandler, _In_ UINT wMode, _In_ DRIVERPROC lpfnHandler)
BOOL VFWAPI DrawDibTime(_In_ HDRAWDIB hdd, _Out_ LPDRAWDIBTIME lpddtime)
static DWORD ICGetDefaultKeyFrameRate(HIC hic)
HRESULT WINAPI AVIMakeCompressedStream(_Outptr_ PAVISTREAM *ppsCompressed, _In_ PAVISTREAM ppsSource, _In_ AVICOMPRESSOPTIONS *lpOptions, _In_opt_ CLSID *pclsidHandler)
HRESULT WINAPI EditStreamSetInfoA(_In_ PAVISTREAM pstream, _In_reads_bytes_(size) LPAVISTREAMINFOA asi, _In_ LONG size)
HRESULT WINAPI AVIStreamOpenFromFileW(_Outptr_ PAVISTREAM *ppavi, _In_ LPCWSTR szFile, _In_ DWORD fccType, _In_ LONG lParam, _In_ UINT mode, _In_opt_ CLSID *pclsidHandler)
HRESULT WINAPI AVIFileOpenW(_Outptr_ PAVIFILE *ppfile, _In_ LPCWSTR szFile, UINT uMode, _In_opt_ LPCLSID lpHandler)
struct tagCapDriverCaps * PCAPDRIVERCAPS
BOOL VFWAPI ICRemove(_In_ DWORD fccType, _In_ DWORD fccHandler, _In_ UINT wFlags)
HRESULT WINAPI AVISaveVW(LPCWSTR szFile, _In_opt_ CLSID *pclsidHandler, _In_ AVISAVECALLBACK lpfnCallback, _In_ int nStream, _In_reads_(nStream) PAVISTREAM *ppavi, _In_reads_(nStream) LPAVICOMPRESSOPTIONS *plpOptions)
LRESULT(CALLBACK * CAPWAVECALLBACK)(_In_ HWND hWnd, _In_ LPWAVEHDR lpWHdr)
HRESULT WINAPI EditStreamSetNameA(_In_ PAVISTREAM pstream, _In_ LPCSTR szName)
void VFWAPI ICCompressorFree(_In_ PCOMPVARS pc)
struct _AVIFILEINFOW * LPAVIFILEINFOW
#define DEFINE_AVIGUID(name, l, w1, w2)
DWORD VFWAPIV ICCompress(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LPBITMAPINFOHEADER lpbiOutput, _Out_writes_bytes_(lpbiOutput->biSizeImage) LPVOID lpData, _In_ LPBITMAPINFOHEADER lpbiInput, _In_reads_bytes_(lpbiInput->biSizeImage) LPVOID lpBits, _Out_opt_ LPDWORD lpckid, _Out_opt_ LPDWORD lpdwFlags, _In_ LONG lFrameNum, _In_ DWORD dwFrameSize, _In_ DWORD dwQuality, _In_opt_ LPBITMAPINFOHEADER lpbiPrev, _In_reads_bytes_opt_(lpbiPrev->biSizeImage) LPVOID lpPrev)
HRESULT WINAPI AVIStreamReadData(_In_ PAVISTREAM iface, _In_ DWORD fcc, _Out_writes_bytes_to_opt_(*lpread, *lpread) LPVOID lp, _Inout_ LONG *lpread)
LRESULT(CALLBACK * CAPYIELDCALLBACK)(_In_ HWND hWnd)
LONG WINAPI AVIStreamStart(_In_ PAVISTREAM iface)
#define ICM_DECOMPRESSEX_BEGIN
struct channel_caps_tag CHANNEL_CAPS
HWND VFWAPIV MCIWndCreateW(_In_opt_ HWND, _In_opt_ HINSTANCE, _In_ DWORD, _In_opt_ LPCWSTR)
HRESULT WINAPI AVIGetFromClipboard(_Outptr_ PAVIFILE *ppfile)
DWORD VFWAPI VideoForWindowsVersion(void)
HRESULT WINAPI EditStreamPaste(_In_ PAVISTREAM pDest, _Inout_ LONG *plStart, _Inout_ LONG *plLength, _In_ PAVISTREAM pSource, _In_ LONG lStart, _In_ LONG lEnd)
HRESULT WINAPI AVIStreamRead(_In_ PAVISTREAM iface, _In_ LONG start, _In_ LONG samples, _Out_writes_bytes_opt_(buffersize) LPVOID buffer, _In_ LONG buffersize, _Out_opt_ LONG *bytesread, _Out_opt_ LONG *samplesread)
#define ICM_SET_STATUS_PROC
struct IAVIEditStream * PAVIEDITSTREAM
HRESULT WINAPI AVIStreamInfoW(_In_ PAVISTREAM iface, _Out_writes_bytes_(size) AVISTREAMINFOW *asi, _In_ LONG size)
LONG WINAPI AVIStreamTimeToSample(_In_ PAVISTREAM pstream, _In_ LONG lTime)
HRESULT WINAPI EditStreamCut(_In_ PAVISTREAM pStream, _Inout_ LONG *plStart, _Inout_ LONG *plLength, _Outptr_ PAVISTREAM *ppResult)
BOOL VFWAPI DrawDibEnd(_In_ HDRAWDIB hdd)
struct _AVISTREAMINFOA AVISTREAMINFOA
HRESULT WINAPI AVIFileWriteData(_In_ PAVIFILE pfile, _In_ DWORD fcc, _In_reads_bytes_(size) LPVOID lp, _In_ LONG size)
HRESULT WINAPI AVISaveVA(LPCSTR szFile, _In_opt_ CLSID *pclsidHandler, _In_ AVISAVECALLBACK lpfnCallback, _In_ int nStream, _In_reads_(nStream) PAVISTREAM *ppavi, _In_reads_(nStream) LPAVICOMPRESSOPTIONS *plpOptions)
HRESULT WINAPI AVIFileInfoW(_In_ PAVIFILE pfile, _Out_writes_bytes_(lSize) PAVIFILEINFOW pfi, _In_ LONG lSize)
struct tagCapStatus CAPSTATUS
DWORD VFWAPIV ICDecompress(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LPBITMAPINFOHEADER lpbiFormat, _In_reads_bytes_(lpbiFormat->biSizeImage) LPVOID lpData, _In_ LPBITMAPINFOHEADER lpbi, _Out_writes_bytes_(lpbi->biSizeImage) LPVOID lpBits)
PGETFRAME WINAPI AVIStreamGetFrameOpen(_In_ PAVISTREAM pavi, _In_opt_ LPBITMAPINFOHEADER lpbiWanted)
ULONG WINAPI AVIStreamAddRef(PAVISTREAM iface)
struct tagCapDriverCaps CAPDRIVERCAPS
void WINAPI AVIFileExit(void)
struct _AVIPALCHANGE AVIPALCHANGE
LRESULT(CALLBACK * CAPERRORCALLBACKW)(_In_ HWND hWnd, _In_ int nID, LPCWSTR lpsz)
BOOL VFWAPI capGetDriverDescriptionA(WORD, _Out_writes_(cbName) LPSTR, _In_ INT cbName, _Out_writes_(cbVer) LPSTR, _In_ INT cbVer)
LONG VFWAPI TermVFW(void)
struct _AVISTREAMINFOA * LPAVISTREAMINFOA
struct _AVIFILEINFOA AVIFILEINFOA
LONG WINAPI AVIStreamEndStreaming(_In_ PAVISTREAM pavi)
HRESULT WINAPI EditStreamSetInfoW(_In_ PAVISTREAM pstream, _In_reads_bytes_(size) LPAVISTREAMINFOW asi, _In_ LONG size)
struct tagCaptureParms * LPCAPTUREPARMS
LRESULT VFWAPI ICSendMessage(_In_ HIC hic, _In_ UINT msg, _In_ DWORD_PTR dw1, _In_ DWORD_PTR dw2)
struct _AVISTREAMINFOW * LPAVISTREAMINFOW
BOOL VFWAPI ICInfo(_In_ DWORD fccType, _In_ DWORD fccHandler, _Out_ ICINFO *lpicinfo)
BOOL VFWAPI capGetDriverDescriptionW(WORD, _Out_writes_(cbName) LPWSTR, _In_ INT cbName, _Out_writes_(cbVer) LPWSTR, _In_ INT cbVer)
LRESULT(CALLBACK * CAPVIDEOCALLBACK)(_In_ HWND hWnd, _In_ LPVIDEOHDR lpVHdr)
HIC VFWAPI ICOpen(_In_ DWORD fccType, _In_ DWORD fccHandler, _In_ UINT wMode)
struct tagCapDriverCaps * LPCAPDRIVERCAPS
BOOL VFWAPI DrawDibStop(_In_ HDRAWDIB hdd)
BOOL VFWAPI ICCompressorChoose(_In_opt_ HWND hwnd, _In_ UINT uiFlags, _In_opt_ LPVOID pvIn, _In_opt_ LPVOID lpData, _Inout_ PCOMPVARS pc, _In_opt_ LPSTR lpszTitle)
void WINAPI AVIFileInit(void)
#define ICM_DECOMPRESSEX_QUERY
BOOL VFWAPI ICSeqCompressFrameStart(_In_ PCOMPVARS pc, _In_ LPBITMAPINFO lpbiIn)
HANDLE VFWAPI ICImageDecompress(_In_opt_ HIC hic, _In_ UINT uiFlags, _In_ LPBITMAPINFO lpbiIn, _In_ LPVOID lpBits, _In_opt_ LPBITMAPINFO lpbiOut)
struct _AVIFILEINFOW AVIFILEINFOW
HRESULT WINAPI AVIStreamGetFrameClose(_In_ PGETFRAME pg)
HRESULT WINAPI AVIFileCreateStreamW(_In_ PAVIFILE pfile, _Outptr_ PAVISTREAM *ppavi, _In_ AVISTREAMINFOW *psi)
HIC VFWAPI ICGetDisplayFormat(_In_opt_ HIC hic, _In_ LPBITMAPINFOHEADER lpbiIn, _Out_ LPBITMAPINFOHEADER lpbiOut, _In_ int BitDepth, _In_ int dx, _In_ int dy)
#define ICM_DRAW_SUGGESTFORMAT
struct channel_caps_tag * PCHANNEL_CAPS
struct _AVIFILEINFOA * PAVIFILEINFOA
LONG WINAPI AVIStreamBeginStreaming(_In_ PAVISTREAM pavi, _In_ LONG lStart, _In_ LONG lEnd, _In_ LONG lRate)
HRESULT WINAPI AVIBuildFilterW(_Out_writes_(cbFilter) LPWSTR szFilter, _In_ LONG cbFilter, _In_ BOOL fSaving)
struct tagCapStatus * LPCAPSTATUS
struct AVICOMPRESSOPTIONS * LPAVICOMPRESSOPTIONS
BOOL(CALLBACK * AVISAVECALLBACK)(INT)
struct tagCapStatus * PCAPSTATUS
HRESULT WINAPI AVIStreamOpenFromFileA(_Outptr_ PAVISTREAM *ppavi, _In_ LPCSTR szFile, _In_ DWORD fccType, _In_ LONG lParam, _In_ UINT mode, _In_opt_ CLSID *pclsidHandler)
HRESULT WINAPI AVIStreamWriteData(_In_ PAVISTREAM iface, _In_ DWORD fcc, _In_reads_bytes_(size) LPVOID lp, _In_ LONG size)
#define ICM_GETDEFAULTQUALITY
ULONG WINAPI AVIFileRelease(PAVIFILE pfile)
struct _AVISTREAMINFOA * PAVISTREAMINFOA
ULONG WINAPI AVIStreamRelease(PAVISTREAM iface)
HRESULT WINAPI AVIStreamSetFormat(_In_ PAVISTREAM iface, _In_ LONG pos, _In_reads_bytes_(formatsize) LPVOID format, _In_ LONG formatsize)
HANDLE VFWAPI ICImageCompress(_In_ HIC hic, _In_ UINT uiFlags, _In_ LPBITMAPINFO lpbiIn, _In_ LPVOID lpBits, _In_opt_ LPBITMAPINFO lpbiOut, _In_ LONG lQuality, _Inout_opt_ LONG *plSize)
HRESULT WINAPI AVIStreamCreate(_Outptr_ PAVISTREAM *, _In_ LONG, _In_ LONG, _In_opt_ CLSID *)
HIC VFWAPI ICLocate(_In_ DWORD fccType, _In_ DWORD fccHandler, _In_ LPBITMAPINFOHEADER lpbiIn, _In_opt_ LPBITMAPINFOHEADER lpbiOut, _In_ WORD wFlags)
BOOL VFWAPI DrawDibBegin(_In_ HDRAWDIB hdd, _In_opt_ HDC hdc, _In_ INT dxDst, _In_ INT dyDst, _In_ LPBITMAPINFOHEADER lpbi, _In_ INT dxSrc, _In_ INT dySrc, _In_ UINT wFlags)
struct videohdr_tag * PVIDEOHDR
DWORD VFWAPIV ICDrawBegin(_In_ HIC hic, _In_ DWORD dwFlags, _In_opt_ HPALETTE hpal, _In_opt_ HWND hwnd, _In_opt_ HDC hdc, _In_ INT xDst, _In_ INT yDst, _In_ INT dxDst, _In_ INT dyDst, _In_ LPBITMAPINFOHEADER lpbi, _In_ INT xSrc, _In_ INT ySrc, _In_ INT dxSrc, _In_ INT dySrc, _In_ DWORD dwRate, _In_ DWORD dwScale)
LONG WINAPI AVIStreamLength(_In_ PAVISTREAM iface)
HRESULT WINAPI AVIFileOpenA(_Outptr_ PAVIFILE *ppfile, _In_ LPCSTR szFile, UINT uMode, _In_opt_ LPCLSID lpHandler)
static LRESULT VFWAPI ICDecompressExBegin(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LPBITMAPINFOHEADER lpbiSrc, _In_opt_ LPVOID lpSrc, _In_ int xSrc, _In_ int ySrc, _In_ int dxSrc, _In_ int dySrc, _In_ LPBITMAPINFOHEADER lpbiDst, _Out_opt_ LPVOID lpDst, _In_ int xDst, _In_ int yDst, _In_ int dxDst, _In_ int dyDst)
ULONG WINAPI AVIFileAddRef(PAVIFILE pfile)
LPVOID WINAPI AVIStreamGetFrame(_In_ PGETFRAME pg, _In_ LONG pos)
LONG VFWAPI InitVFW(void)
HRESULT WINAPI CreateEditableStream(_Outptr_ PAVISTREAM *ppEditable, _In_ PAVISTREAM pSource)
BOOL VFWAPI DrawDibStart(_In_ HDRAWDIB hdd, _In_ DWORD rate)
HRESULT WINAPI AVIBuildFilterA(_Out_writes_(cbFilter) LPSTR szFilter, _In_ LONG cbFilter, _In_ BOOL fSaving)
struct IAVIStream * PAVISTREAM
HRESULT WINAPI EditStreamSetNameW(_In_ PAVISTREAM pstream, _In_ LPCWSTR szName)
LRESULT(CALLBACK * CAPSTATUSCALLBACKW)(_In_ HWND hWnd, _In_ int nID, _In_ LPCWSTR lpsz)
struct COMPVARS * PCOMPVARS
LPVOID VFWAPI ICSeqCompressFrame(_In_ PCOMPVARS pc, _Reserved_ UINT uiFlags, _In_ LPVOID lpBits, _Out_ BOOL *pfKey, _Inout_opt_ LONG *plSize)
struct IAVIFile * PAVIFILE
static DWORD ICGetDefaultQuality(HIC hic)
void VFWAPI ICSeqCompressFrameEnd(_In_ PCOMPVARS pc)
struct _AVIINDEXENTRY AVIINDEXENTRY
HDRAWDIB VFWAPI DrawDibOpen(void)
LRESULT(CALLBACK * CAPCONTROLCALLBACK)(_In_ HWND hWnd, _In_ int nState)
HWND VFWAPI capCreateCaptureWindowA(LPCSTR, _In_ DWORD, _In_ INT, _In_ INT, _In_ INT, _In_ INT, _In_opt_ HWND, _In_ INT)
HRESULT WINAPI EditStreamClone(_In_ PAVISTREAM pStream, _Outptr_ PAVISTREAM *ppResult)
HRESULT WINAPI AVIStreamInfoA(_In_ PAVISTREAM iface, _Out_writes_bytes_(size) AVISTREAMINFOA *asi, _In_ LONG size)
DWORD VFWAPI DrawDibProfileDisplay(_In_ LPBITMAPINFOHEADER lpbi)
HRESULT CDECL AVISaveA(LPCSTR szFile, _In_opt_ CLSID *pclsidHandler, _In_ AVISAVECALLBACK lpfnCallback, _In_ int nStreams, _In_ PAVISTREAM pavi, _In_ LPAVICOMPRESSOPTIONS lpOptions,...)
struct _AVIFILEINFOA * LPAVIFILEINFOA
DWORD VFWAPIV ICDraw(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LPVOID lpFormat, _In_reads_bytes_opt_(cbData) LPVOID lpData, _In_ DWORD cbData, _In_ LONG lTime)
HRESULT WINAPI AVIClearClipboard(void)
struct IGetFrame * PGETFRAME
HRESULT WINAPI AVIStreamWrite(_In_ PAVISTREAM iface, _In_ LONG start, _In_ LONG samples, _In_reads_bytes_(buffersize) LPVOID buffer, _In_ LONG buffersize, _In_ DWORD flags, _Out_opt_ LONG *sampwritten, _Out_opt_ LONG *byteswritten)
struct channel_caps_tag * LPCHANNEL_CAPS
HRESULT WINAPI AVIFileInfoA(_In_ PAVIFILE pfile, _Out_writes_bytes_(lSize) PAVIFILEINFOA pfi, _In_ LONG lSize)
HRESULT WINAPI AVIFileGetStream(_In_ PAVIFILE pfile, _Outptr_ PAVISTREAM *avis, _In_ DWORD fccType, _In_ LONG lParam)
LONG WINAPI AVIStreamFindSample(_In_ PAVISTREAM pstream, _In_ LONG pos, _In_ LONG flags)
HRESULT WINAPI AVIPutFileOnClipboard(_In_ PAVIFILE pfile)
UINT VFWAPI DrawDibRealize(_In_ HDRAWDIB hdd, _In_ HDC hdc, _In_ BOOL fBackground)
static LRESULT VFWAPI ICDecompressExQuery(_In_ HIC hic, _In_ DWORD dwFlags, _In_ LPBITMAPINFOHEADER lpbiSrc, _Reserved_ LPVOID lpSrc, _In_ int xSrc, _In_ int ySrc, _In_ int dxSrc, _In_ int dySrc, _In_opt_ LPBITMAPINFOHEADER lpbiDst, _Out_opt_ LPVOID lpDst, _In_ int xDst, _In_ int yDst, _In_ int dxDst, _In_ int dyDst)
HRESULT WINAPI EditStreamCopy(_In_ PAVISTREAM pStream, _Inout_ LONG *plStart, _Inout_ LONG *plLength, _Outptr_ PAVISTREAM *ppResult)
LRESULT(CALLBACK * CAPSTATUSCALLBACKA)(_In_ HWND hWnd, _In_ int nID, LPCSTR lpsz)
HRESULT WINAPI AVISaveOptionsFree(INT nStreams, _In_reads_(nStreams) LPAVICOMPRESSOPTIONS *ppOptions)
static BOOL Write(PBYTE Address, PBYTE Data, SIZE_T Size)
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
_In_ DWORD _Out_ _In_ WORD wFlags
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
#define DECL_WINELIB_TYPE_AW(type)