annotate loader/vfl.c @ 15533:ddf15d233d58

Do not switch to audio tracks whose codec private data differs from the main audio track's as this will most likely result in messed up audio output. Patch by Michael Behrisch <list () behrisch ! de>
author mosu
date Sat, 21 May 2005 06:50:08 +0000
parents f5537cc95b02
children 0783dd397f74
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 *
f5537cc95b02 Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents: 7385
diff changeset
4 * Modified for use with MPlayer, detailed CVS changelog at
f5537cc95b02 Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents: 7385
diff changeset
5 * http://www.mplayerhq.hu/cgi-bin/cvsweb.cgi/main/
f5537cc95b02 Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents: 7385
diff changeset
6 * $Id$
f5537cc95b02 Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents: 7385
diff changeset
7 *
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
8 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
9 #include <config.h>
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
10
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
11 #include <stdio.h>
1312
cca0d2481b7e Fix two prototype warnings
jkeil
parents: 1307
diff changeset
12 #include <stdlib.h>
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
13 #include <string.h>
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
14
1307
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
15 #include "win32.h"
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
16 #include "loader.h"
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
17
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
18 #include "wine/winbase.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
19 #include "wine/windef.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
20 #include "wine/winuser.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
21 #include "wine/vfw.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
22 #include "wine/winestring.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
23 #include "wine/driver.h"
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
24 #include "wine/avifmt.h"
1307
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
25 #include "driver.h"
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
26
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
27 #define OpenDriverA DrvOpen
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
28 #define CloseDriver DrvClose
d8c1b0b38edc Add prototypes to wine/loader stuff, so that we can catch __stdcall function
jkeil
parents: 1297
diff changeset
29
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
30 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
31 * VideoForWindowsVersion [MSVFW.2][MSVIDEO.2]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
32 * Returns the version in major.minor form.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
33 * In Windows95 this returns 0x040003b6 (4.950)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
34 */
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
35 long VFWAPI VideoForWindowsVersion(void) {
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
36 return 0x040003B6; /* 4.950 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
37 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
38
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
39 /* system.ini: [drivers] */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
40
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
41 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
42 * ICInfo [MSVFW.33]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
43 * Get information about an installable compressor. Return TRUE if there
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
44 * is one.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
45 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
46 int VFWAPI
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
47 ICInfo(
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
48 long fccType, /* [in] type of compressor ('vidc') */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
49 long fccHandler, /* [in] <n>th compressor */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
50 ICINFO *lpicinfo /* [out] information about compressor */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
51 ) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
52 /* does OpenDriver/CloseDriver */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
53 lpicinfo->dwSize = sizeof(ICINFO);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
54 lpicinfo->fccType = fccType;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
55 lpicinfo->dwFlags = 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
56 return TRUE;
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 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
60 * ICOpen [MSVFW.37]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
61 * Opens an installable compressor. Return special handle.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
62 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
63 HIC VFWAPI
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
64 //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
65 ICOpen(long filename,long fccHandler,unsigned int wMode) {
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
66 ICOPEN icopen;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
67 HDRVR hdrv;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
68 WINE_HIC *whic;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
69
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
70 /* Well, lParam2 is in fact a LPVIDEO_OPEN_PARMS, but it has the
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
71 * same layout as ICOPEN
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
72 */
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
73 icopen.fccType = 0x63646976; // "vidc" //fccType;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
74 icopen.fccHandler = fccHandler;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
75 icopen.dwSize = sizeof(ICOPEN);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
76 icopen.dwFlags = wMode;
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
77 icopen.pV1Reserved = (void*)filename;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
78 /* FIXME: do we need to fill out the rest too? */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
79 hdrv=OpenDriverA((long)&icopen);
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
80 if (!hdrv) return 0;
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
81 whic = (WINE_HIC*)malloc(sizeof(WINE_HIC));
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
82 whic->hdrv = hdrv;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
83 whic->driverproc= ((DRVR*)hdrv)->DriverProc;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
84 // 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
85 whic->driverid = ((DRVR*)hdrv)->dwDriverID;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
86 return (HIC)whic;
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 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
90 * ICGetInfo [MSVFW.30]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
91 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
92 LRESULT VFWAPI
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
93 ICGetInfo(HIC hic,ICINFO *picinfo,long cb) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
94 LRESULT ret;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
95
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
96 ret = ICSendMessage(hic,ICM_GETINFO,(long)picinfo,cb);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
97
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
98 return ret;
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 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
102 * ICCompress [MSVFW.23]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
103 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
104 long VFWAPIV
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
105 ICCompress(
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
106 HIC hic,long dwFlags,LPBITMAPINFOHEADER lpbiOutput,void* lpData,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
107 LPBITMAPINFOHEADER lpbiInput,void* lpBits,long* lpckid,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
108 long* lpdwFlags,long lFrameNum,long dwFrameSize,long dwQuality,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
109 LPBITMAPINFOHEADER lpbiPrev,void* lpPrev
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
110 ) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
111 ICCOMPRESS iccmp;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
112
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
113 iccmp.dwFlags = dwFlags;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
114
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
115 iccmp.lpbiOutput = lpbiOutput;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
116 iccmp.lpOutput = lpData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
117 iccmp.lpbiInput = lpbiInput;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
118 iccmp.lpInput = lpBits;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
119
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
120 iccmp.lpckid = lpckid;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
121 iccmp.lpdwFlags = lpdwFlags;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
122 iccmp.lFrameNum = lFrameNum;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
123 iccmp.dwFrameSize = dwFrameSize;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
124 iccmp.dwQuality = dwQuality;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
125 iccmp.lpbiPrev = lpbiPrev;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
126 iccmp.lpPrev = lpPrev;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
127 return ICSendMessage(hic,ICM_COMPRESS,(long)&iccmp,sizeof(iccmp));
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 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
131 * ICDecompress [MSVFW.26]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
132 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
133 long VFWAPIV
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
134 ICDecompress(HIC hic,long dwFlags,LPBITMAPINFOHEADER lpbiFormat,void* lpData,LPBITMAPINFOHEADER lpbi,void* lpBits) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
135 ICDECOMPRESS icd;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
136 int result;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
137 icd.dwFlags = dwFlags;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
138 icd.lpbiInput = lpbiFormat;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
139 icd.lpInput = lpData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
140
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
141 icd.lpbiOutput = lpbi;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
142 icd.lpOutput = lpBits;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
143 icd.ckid = 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
144 result=ICSendMessage(hic,ICM_DECOMPRESS,(long)&icd,sizeof(icd));
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
145 return result;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
146 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
147
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
148 /***********************************************************************
1297
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
149 * ICDecompressEx [MSVFW.26]
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
150 */
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
151 long VFWAPIV
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
152 ICDecompressEx(HIC hic,long dwFlags,LPBITMAPINFOHEADER lpbiFormat,void* lpData,LPBITMAPINFOHEADER lpbi,void* lpBits) {
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
153 ICDECOMPRESSEX icd;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
154 int result;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
155
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
156 icd.dwFlags = dwFlags;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
157
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
158 icd.lpbiSrc = lpbiFormat;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
159 icd.lpSrc = lpData;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
160
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
161 icd.lpbiDst = lpbi;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
162 icd.lpDst = lpBits;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
163
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
164 icd.xSrc=icd.ySrc=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
165 icd.dxSrc=lpbiFormat->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
166 icd.dySrc=abs(lpbiFormat->biHeight);
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
167
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
168 icd.xDst=icd.yDst=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
169 icd.dxDst=lpbi->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
170 icd.dyDst=abs(lpbi->biHeight);
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
171
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
172 //icd.ckid = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
173 result=ICSendMessage(hic,ICM_DECOMPRESSEX,(long)&icd,sizeof(icd));
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
174 return result;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
175 }
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
176
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
177 long VFWAPIV
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
178 ICUniversalEx(HIC hic,int command,LPBITMAPINFOHEADER lpbiFormat,LPBITMAPINFOHEADER lpbi) {
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
179 ICDECOMPRESSEX icd;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
180 int result;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
181
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
182 icd.dwFlags = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
183
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
184 icd.lpbiSrc = lpbiFormat;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
185 icd.lpSrc = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
186
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
187 icd.lpbiDst = lpbi;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
188 icd.lpDst = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
189
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
190 icd.xSrc=icd.ySrc=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
191 icd.dxSrc=lpbiFormat->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
192 icd.dySrc=abs(lpbiFormat->biHeight);
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
193
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
194 icd.xDst=icd.yDst=0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
195 icd.dxDst=lpbi->biWidth;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
196 icd.dyDst=abs(lpbi->biHeight);
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
197
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
198 //icd.ckid = 0;
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
199 result=ICSendMessage(hic,command,(long)&icd,sizeof(icd));
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
200 return result;
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
200c03672178 VfwEx support
arpi
parents: 1096
diff changeset
204 /***********************************************************************
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
205 * ICSendMessage [MSVFW.40]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
206 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
207 LRESULT VFWAPI
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
208 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
209 WINE_HIC *whic = (WINE_HIC*)hic;
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
210 return SendDriverMessage(whic->hdrv, msg, lParam1,lParam2);
1
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 /***********************************************************************
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
215 * ICClose [MSVFW.22]
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
216 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
217 LRESULT VFWAPI ICClose(HIC hic) {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
218 WINE_HIC *whic = (WINE_HIC*)hic;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
219 /* FIXME: correct? */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
220 // CloseDriver(whic->hdrv,0,0);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
221 DrvClose(whic->hdrv);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
222 //#warning FIXME: DrvClose
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
223 free(whic);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
224 return 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
225 }
7385
e2fcdd7608b1 - updated to use new stype ICopen (filename passed in the icopen struct)
arpi
parents: 2069
diff changeset
226
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
227 int VFWAPI ICDoSomething()
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
228 {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
229 return 0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
230 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
231