New limitation in #1408 with rdp RRS feed

  • Question

  • Hi there,

    I've been working with the initial Kinects from day 1 and really love the device (especially the latest v2 one). That's why I'm currently working on projects with a total of three sensors at the moment and was really pleased to hear that an update to the SDK has already been released.

    Since I'm working on an embedded home automation system partially based on Kinect the initial SDK had two major limitations for me:

    1) Only one device per machine - Temporary workaround: install more servers (one Windows Server 2012 R2 per Kinect) - I don't think customers would be willing to pay for one machine per Kinect especially when the plan is to install a dozen Kinects per house.

    2) Kinect cannot be accessed from a Windows Server (Session 0 isolation I guess) - Temporary workaround: every server now has a "Kinect Proxy" that runs when the "Administrator" account logs in and provides a local only WCF interface; a Windows Service then connects to that proxy and thus is able to access the Kinect skeleton, depth and picture data.

    Both workarounds are pretty messy, however everything seemed to work.

    The problem with the second release (#1408) appears to be the following:

    To start the Kinect Proxy service, a remote session has to be created to all the servers since the user has to log in manually. Now in the new release the Kinect suddenly changes "IsAvailable = false" once the RDP connection is terminated (the user is NOT logged out). As soon as the RDP connection is restored the Kinect reports "IsAvailable = true" again.

    Is this a known change in the new release? Since unfortunately I can't seem to find a proper changelog I can only guess.

    Has anybody else had any of the problems I stated above?

    Keep up the great work; and thanks in advance

    Saturday, August 23, 2014 11:47 AM

All replies

  • This is expected. Kinect requires an active logged in user to run.

    In an RDP session KinectMonitor will try to launch KinectService. KinectService should fail since there is no DX11 based support in RDP. I guess there is RemoteFX, but I don't know if that had been tested. If KinectService is not running or it cannot communicate with the device, then the API will return that the sensor is not available.

    Is KinectProxy your own service?

    Can you provide more context for using Windows Server and not an embedded WE8S system that would provide you with your own custom shell support but still have desktop services available to you? Why not have smaller embedded type system on a small form factor (such as Intel NUC)?

    Carmine Sirignano - MSFT

    Tuesday, August 26, 2014 6:15 PM