1

I'm using e2eSoft's VcamSDK to create a virtual cam and put image overlay over it programmatically on a WPF application.

Everything seems to work as I want when viewing the graph using GraphEdit.exe. But Lync doesn't display any video or image i push, and Skype only displays the half of the webcam stream i see from GraphEdit. Lync can display the stream perfect on video device settings tab, but can't display it on a video conversation, just blank screen.

I'm just pushing some image as overlay on codebehind, and can't seem to work on these both. The Resolution of virtual webcam is 1280x1024 and the Image I'm pushing as overlay is also the same.

Here is my graph on GraphEdit;

enter image description here

I'm not very experienced with these subjects so I don't even know where to start, any help is extremely appreciated. Thanks!

umutto
  • 7,460
  • 4
  • 43
  • 53

1 Answers1

2

Skype does not like high resolution and, is generally, not so much DirectShow friendly. IIRC it will grab 640x480 from the center of the image and will ignore the rest. There is nothing wrong with the camera filter, it's Skype's choice to propagate the motto "640x480 is enough for everyone".

Roman R.
  • 68,205
  • 6
  • 94
  • 158
  • Thank you for the answer! I've seen that before, on the msdn forums or so, there was a search for the perfect skype version.. Do you also know why my application that is pushing images is restarting itself when I try it with Lync? – umutto Sep 08 '11 at 00:13
  • 1
    If it's restarting, I'd suppose something goes wrong like exception (access violation), or a deadlock. Both can be detected and isolated by debugger attached to the host application. – Roman R. Sep 08 '11 at 04:59
  • Thanks for the reply! But debugger can't catch anything, I think that is caused by the SDK (e2esoft's vcam) I use. I've tried to contact them but no solution.. – umutto Sep 08 '11 at 07:30
  • 1
    If I understood this correctly, the entire application (process) restarts, your one or Lync. In either case, restarting application is normally the behavior of the application itself, esp. as a response to a critical problem, or a fatal crash optionally followed by OS dialog notifying on crashed process. In any event, it sounds like a severe error. I don't see anything in the description which might be suggesting the reason. Quite possibly it's caused by SDK. – Roman R. Sep 08 '11 at 07:43
  • Correct, my application that is streaming the video and adding image overlay is crashing. I don't know why but it works on Skype (well half of it at least). So I spouse it's something with the virtual cam thingy but VCAM sdk works alright without the image overlay which makes me think; adding an image overlay on a virtual webcam is a process that needs to be filtered and that filter is not supported on Lync? – umutto Sep 08 '11 at 07:47
  • 1
    One thing I noticed is that the SDK's source filter is a WDM device, that is powered by a kernel mode component. This does not sound good to me. While having a kernel component is a powerful thing, it significantly raises the bar is requirements to its stable operation... I personally prefer user mode virtual cameras. – Roman R. Sep 08 '11 at 07:48
  • Well there is another sdk for virtual cam, I've tried that too but no luck there either. As you've said, realizing that I have big responsibilities with wdm I've changed my development environment for just virtual cam. Probably I need to get support or something like that from the staff of e2esoft, they're a bit amateur and the SDK is a bit flawed. I can't find any mistakes on the thing I try no mater how many times I think over it. – umutto Sep 08 '11 at 07:54