Vladdy Impaler wrote:
RIght now I'm working on a patch so I can use my webcam under wine without having to switch to unix or use non-working solutions..
Right now there are 2 patches needed to get MSN to connect to the internet: first is to disable SSL, second strcpy's a value at urlmon getuseragent or something
To get this to work, a few modifications to existing files are needed: First of all, if the catagory exists, let devenum return all from videoinput catagory: diff -Nru /root/wine-20050211/dlls/devenum/createdevenum.c wine-20050211/dlls/devenum/createdevenum.c --- /root/wine-20050211/dlls/devenum/createdevenum.c 2005-01-25 11:56:39.000000000 +0100 +++ wine-20050211/dlls/devenum/createdevenum.c 2005-03-15 00:15:47.000000000 +0100 @@ -117,7 +117,8 @@
if (IsEqualGUID(clsidDeviceClass, &CLSID_AudioRendererCategory) || IsEqualGUID(clsidDeviceClass, &CLSID_AudioInputDeviceCategory) ||
IsEqualGUID(clsidDeviceClass, &CLSID_MidiRendererCategory))
IsEqualGUID(clsidDeviceClass, &CLSID_MidiRendererCategory) ||
{ hbasekey = HKEY_CURRENT_USER; strcpyW(wszRegKey, wszActiveMovieKey);IsEqualGUID(clsidDeviceClass, &CLSID_VideoInputDeviceCategory))
and a few other patches to devenum main (Not sure if those are needed) diff -Nru /root/wine-20050211/dlls/devenum/devenum_main.c wine-20050211/dlls/devenum/devenum_main.c --- /root/wine-20050211/dlls/devenum/devenum_main.c 2004-12-07 15:37:11.000000000 +0100 +++ wine-20050211/dlls/devenum/devenum_main.c 2005-03-15 00:15:47.000000000 +0100 @@ -122,7 +122,7 @@ {&CLSID_AudioCompressorCategory, acmcat, TRUE}, {&CLSID_VideoCompressorCategory, vidcat, TRUE}, {&CLSID_LegacyAmFilterCategory, filtcat, TRUE},
{&CLSID_VideoInputDeviceCategory, vfwcat, FALSE},
{&CLSID_VideoInputDeviceCategory, vfwcat, TRUE}, {&CLSID_AudioInputDeviceCategory, wavein, FALSE}, {&CLSID_AudioRendererCategory, waveout, FALSE}, {&CLSID_MidiRendererCategory, midiout, FALSE},
@@ -156,7 +156,7 @@
pMapper = (IFilterMapper2*)mapvptr;
IFilterMapper2_CreateCategory(pMapper,
&CLSID_VideoInputDeviceCategory, MERIT_DO_NOT_USE, friendlyvidcap);
IFilterMapper2_CreateCategory(pMapper,
&CLSID_VideoInputDeviceCategory, MERIT_NORMAL, friendlyvidcap); IFilterMapper2_CreateCategory(pMapper, &CLSID_LegacyAmFilterCategory, MERIT_NORMAL, friendlydshow); IFilterMapper2_CreateCategory(pMapper, &CLSID_VideoCompressorCategory, MERIT_DO_NOT_USE, friendlyvidcomp); IFilterMapper2_CreateCategory(pMapper, &CLSID_AudioInputDeviceCategory, MERIT_DO_NOT_USE, friendlyaudcap);
I wanted to put all custom code into qcap, but because of the pins that's not possible.
MultiMedia streams (amstream.dll) use a special filter that will need pins too so we may consider sharing them (as well as common Direct Show stuff) in a separate lib. I think Alexandre will not like it but I don't see other solution to prevent this code duplication.
Christian