1

So I have a strange combination that I need to do, I'm trying to build a conferencing tool using Kinect as a webcam and Microsoft Lync as a base.

Don't ask about why Kinect? its a long story but a must.. Anyway I can get the stream from the Kinect's camera as following, but I don't really know how to pass it as outgoing video in lync?

    void nui_VideoFrameReady(object sender, ImageFrameReadyEventArgs e)
    {
        PlanarImage Image = e.ImageFrame.Image;
        video.Source = BitmapSource.Create(
            Image.Width, Image.Height, 96, 96, PixelFormats.Bgr32, null, Image.Bits, Image.Width * Image.BytesPerPixel);
    }

I've found some related classes under Microsoft.Lync.Model.Conversation.AudioVideo like VideoChannel, Channel or VideoDevice but can't seem to find something like a source property for those either. Also I don't know what to do if i find the source property, it seems a little complicated for me to implement VideoChannels in Microsoft Lync SDK. I really need help.

I'm trying to build a wpf application, and am not really experienced with the Lync sdk. Any help will be extremely appreciated! Thanks.


Edit: Okay so according to Paul's answer I'm not restricting myself with Lync SDK only from now on. If there is another solution like using UCMA, or anything. I'm open. Thanks for any help!

umutto
  • 7,460
  • 4
  • 43
  • 53
  • 1
    What's the setup? Are you running the Lync client directly on the xbox? Or you have a kinect hooked up to a PC running Lync? – Paul Nearney Aug 30 '11 at 09:01
  • Thanks for the reply and sorry for not telling that earlier! I'm running them both on my 64bit PC with Kinect for Windows SDK. And going to develop the application for PC use only. – umutto Aug 30 '11 at 09:23

1 Answers1

2

Does Windows recognise the kinect camera as a video device? If so, then the Lync client should allow you to select it as the video source under the Options screen. You'll also be able to select it programatically, but I'm not at my machine and can't remember the call to make off the tip of my head.

If not, then I think the key is getting the kinect camera recognised by windows (possibly using the kinect SDK?). Otherwise, I don't think there is a way to programatically stream video from the kinect camera to a Lync video call using the Lync SDK.

Paul Nearney
  • 6,965
  • 2
  • 30
  • 37
  • Thank you for the answer! Actually i've found a direct show filter on msdn forums that lets skype, lync or any other application to recognize Kinect as a webcam. But the resolution is low and i can't manipulate the video stream beforehand. So i was looking for a way to bind the outgoing stream to the Kinect image output on codebehind where i can access everything related to Kinect SDK without using that filter. Actually showing any stream as source would be ok, since its wpf and i can somehow manage to combine it with Kinects input. Then i guess i need to find some other way.. Thanks again! – umutto Aug 30 '11 at 12:52