MSN Webcam patch
Christian Costa
titan.costa at wanadoo.fr
Wed Mar 16 17:44:46 CST 2005
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) ||
> + IsEqualGUID(clsidDeviceClass, &CLSID_VideoInputDeviceCategory))
> {
> hbasekey = HKEY_CURRENT_USER;
> strcpyW(wszRegKey, wszActiveMovieKey);
>
> 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
More information about the wine-devel
mailing list