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