annotate loader/vfl.c @ 31666:796b778e2411

Enable robust resync for mpg123 decoder. This prevents the decoder from giving up give after long pieces of invalid data, for example during transmission errors with DVB-T and similar. patch by Thomas Orgis, thomas-forum orgis org
author diego
date Tue, 13 Jul 2010 15:11:34 +0000
parents 32725ca88fed
children 914208d188b9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
1 /*
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
2 * Copyright 1998 Marcus Meissner
15166
f5537cc95b02 Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents: 7385
diff changeset
3 *
18783
0783dd397f74 CVS --> Subversion in copyright notices
diego
parents: 15166
diff changeset
4 * Modified for use with MPlayer, detailed changelog at
0783dd397f74 CVS --> Subversion in copyright notices
diego
parents: 15166
diff changeset
5 * http://svn.mplayerhq.hu/mplayer/trunk/
15166
f5537cc95b02 Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents: 7385
diff changeset
6 *
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
7 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
8 #include <config.h>
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
9
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
10 #include <stdio.h>
1312
cca0d2481b7e Fix two prototype warnings
jkeil
parents: 1307
diff changeset
11 #include <stdlib.h>
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
12 #include <string.h>
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
13
1307
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
14 #include "win32.h"
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
15 #include "loader.h"
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
16
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
17 #include "wine/winbase.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
18 #include "wine/windef.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
19 #include "wine/winuser.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
20 #include "wine/vfw.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
21 #include "wine/winestring.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
22 #include "wine/driver.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
23 #include "wine/avifmt.h"
26999
0b21ffa03b9c Rename loader/driver.[ch] to loader/drv.[ch], otherwise loader/driver.h can
diego
parents: 25849
diff changeset
24 #include "drv.h"
1307
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
25
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
26 #define OpenDriverA DrvOpen
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
27 #define CloseDriver DrvClose
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
28
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
29 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
30 * VideoForWindowsVersion [MSVFW.2][MSVIDEO.2]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
31 * Returns the version in major.minor form.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
32 * In Windows95 this returns 0x040003b6 (4.950)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
33 */
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
34 long VFWAPI VideoForWindowsVersion(void) {
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
35 return 0x040003B6; /* 4.950 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
36 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
37
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
38 /* system.ini: [drivers] */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
39
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
40 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
41 * ICInfo [MSVFW.33]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
42 * Get information about an installable compressor. Return TRUE if there
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
43 * is one.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
44 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
45 int VFWAPI
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
46 ICInfo(
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
47 long fccType, /* [in] type of compressor ('vidc') */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
48 long fccHandler, /* [in] <n>th compressor */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
49 ICINFO *lpicinfo /* [out] information about compressor */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
50 ) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
51 /* does OpenDriver/CloseDriver */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
52 lpicinfo->dwSize = sizeof(ICINFO);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
53 lpicinfo->fccType = fccType;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
54 lpicinfo->dwFlags = 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
55 return TRUE;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
56 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
57
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
58 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
59 * ICOpen [MSVFW.37]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
60 * Opens an installable compressor. Return special handle.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
61 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
62 HIC VFWAPI
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
63 //ICOpen(long fccType,long fccHandler,unsigned int wMode) {
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
64 ICOpen(long filename,long fccHandler,unsigned int wMode) {
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
65 ICOPEN icopen;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
66 HDRVR hdrv;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
67 WINE_HIC *whic;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
68
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
69 /* Well, lParam2 is in fact a LPVIDEO_OPEN_PARMS, but it has the
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
70 * same layout as ICOPEN
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
71 */
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
72 icopen.fccType = 0x63646976; // "vidc" //fccType;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
73 icopen.fccHandler = fccHandler;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
74 icopen.dwSize = sizeof(ICOPEN);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
75 icopen.dwFlags = wMode;
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
76 icopen.pV1Reserved = (void*)filename;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
77 /* FIXME: do we need to fill out the rest too? */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
78 hdrv=OpenDriverA((long)&icopen);
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
79 if (!hdrv) return 0;
18878
3bf0d70b4c7f rm unnecesary casts from void* - part 2
reynaldo
parents: 18783
diff changeset
80 whic = malloc(sizeof(WINE_HIC));
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
81 whic->hdrv = hdrv;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
82 whic->driverproc= ((DRVR*)hdrv)->DriverProc;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
83 // whic->private = ICSendMessage((HIC)whic,DRV_OPEN,0,(long)&icopen);
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
84 whic->driverid = ((DRVR*)hdrv)->dwDriverID;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
85 return (HIC)whic;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
86 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
87
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
88 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
89 * ICGetInfo [MSVFW.30]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
90 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
91 LRESULT VFWAPI
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
92 ICGetInfo(HIC hic,ICINFO *picinfo,long cb) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
93 LRESULT ret;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
94
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
95 ret = ICSendMessage(hic,ICM_GETINFO,(long)picinfo,cb);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
96
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
97 return ret;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
98 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
99
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
100 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
101 * ICCompress [MSVFW.23]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
102 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
103 long VFWAPIV
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
104 ICCompress(
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
105 HIC hic,long dwFlags,LPBITMAPINFOHEADER lpbiOutput,void* lpData,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
106 LPBITMAPINFOHEADER lpbiInput,void* lpBits,long* lpckid,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
107 long* lpdwFlags,long lFrameNum,long dwFrameSize,long dwQuality,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
108 LPBITMAPINFOHEADER lpbiPrev,void* lpPrev
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
109 ) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
110 ICCOMPRESS iccmp;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
111
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
112 iccmp.dwFlags = dwFlags;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
113
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
114 iccmp.lpbiOutput = lpbiOutput;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
115 iccmp.lpOutput = lpData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
116 iccmp.lpbiInput = lpbiInput;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
117 iccmp.lpInput = lpBits;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
118
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
119 iccmp.lpckid = lpckid;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
120 iccmp.lpdwFlags = lpdwFlags;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
121 iccmp.lFrameNum = lFrameNum;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
122 iccmp.dwFrameSize = dwFrameSize;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
123 iccmp.dwQuality = dwQuality;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
124 iccmp.lpbiPrev = lpbiPrev;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
125 iccmp.lpPrev = lpPrev;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
126 return ICSendMessage(hic,ICM_COMPRESS,(long)&iccmp,sizeof(iccmp));
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
127 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
128
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
129 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
130 * ICDecompress [MSVFW.26]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
131 */
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
132 long VFWAPIV
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
133 ICDecompress(HIC hic,long dwFlags,LPBITMAPINFOHEADER lpbiFormat,void* lpData,LPBITMAPINFOHEADER lpbi,void* lpBits) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
134 ICDECOMPRESS icd;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
135 int result;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
136 icd.dwFlags = dwFlags;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
137 icd.lpbiInput = lpbiFormat;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
138 icd.lpInput = lpData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
139
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
140 icd.lpbiOutput = lpbi;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
141 icd.lpOutput = lpBits;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
142 icd.ckid = 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
143 result=ICSendMessage(hic,ICM_DECOMPRESS,(long)&icd,sizeof(icd));
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
144 return result;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
145 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
146
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
147 /***********************************************************************
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
148 * ICDecompressEx [MSVFW.26]
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
149 */
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
150 long VFWAPIV
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
151 ICDecompressEx(HIC hic,long dwFlags,LPBITMAPINFOHEADER lpbiFormat,void* lpData,LPBITMAPINFOHEADER lpbi,void* lpBits) {
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
152 ICDECOMPRESSEX icd;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
153 int result;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
154
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
155 icd.dwFlags = dwFlags;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
156
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
157 icd.lpbiSrc = lpbiFormat;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
158 icd.lpSrc = lpData;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
159
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
160 icd.lpbiDst = lpbi;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
161 icd.lpDst = lpBits;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
162
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
163 icd.xSrc=icd.ySrc=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
164 icd.dxSrc=lpbiFormat->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
165 icd.dySrc=abs(lpbiFormat->biHeight);
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
166
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
167 icd.xDst=icd.yDst=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
168 icd.dxDst=lpbi->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
169 icd.dyDst=abs(lpbi->biHeight);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
170
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
171 //icd.ckid = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
172 result=ICSendMessage(hic,ICM_DECOMPRESSEX,(long)&icd,sizeof(icd));
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
173 return result;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
174 }
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
175
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
176 long VFWAPIV
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
177 ICUniversalEx(HIC hic,int command,LPBITMAPINFOHEADER lpbiFormat,LPBITMAPINFOHEADER lpbi) {
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
178 ICDECOMPRESSEX icd;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
179 int result;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
180
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
181 icd.dwFlags = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
182
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
183 icd.lpbiSrc = lpbiFormat;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
184 icd.lpSrc = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
185
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
186 icd.lpbiDst = lpbi;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
187 icd.lpDst = 0;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
188
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
189 icd.xSrc=icd.ySrc=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
190 icd.dxSrc=lpbiFormat->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
191 icd.dySrc=abs(lpbiFormat->biHeight);
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
192
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
193 icd.xDst=icd.yDst=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
194 icd.dxDst=lpbi->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
195 icd.dyDst=abs(lpbi->biHeight);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 29212
diff changeset
196
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
197 //icd.ckid = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
198 result=ICSendMessage(hic,command,(long)&icd,sizeof(icd));
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
199 return result;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
200 }
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
201
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
202
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
203 /***********************************************************************
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
204 * ICSendMessage [MSVFW.40]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
205 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
206 LRESULT VFWAPI
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
207 ICSendMessage(HIC hic,unsigned int msg,long lParam1,long lParam2) {
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
208 WINE_HIC *whic = (WINE_HIC*)hic;
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
209 return SendDriverMessage(whic->hdrv, msg, lParam1,lParam2);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
210 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
211
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
212
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
213 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
214 * ICClose [MSVFW.22]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
215 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
216 LRESULT VFWAPI ICClose(HIC hic) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
217 WINE_HIC *whic = (WINE_HIC*)hic;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
218 /* FIXME: correct? */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
219 // CloseDriver(whic->hdrv,0,0);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
220 DrvClose(whic->hdrv);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
221 //#warning FIXME: DrvClose
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
222 free(whic);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
223 return 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
224 }
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
225
29212
eda346733b8c Add missing 'void' to parameterless function declarations.
diego
parents: 26999
diff changeset
226 int VFWAPI ICDoSomething(void)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
227 {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
228 return 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
229 }