Multiple Kinects on a computer but using a single Kinect at a time? RRS feed

  • General discussion

  • Hi,

    I'm interested in using multiple Kinects on a single computer, but only using one at a time. Is this possible? If not, is there a plan in the future to support this?

    I know that Microsoft does not currently support multiple Kinects on a single machine because of the high data rate, but it would be great if I was just able to select which Kinect I wanted to connect to at the start, rather than being forced to choose the "default" option. (If GetKinectSensorCollection() was actually implemented, that would be perfect!)

    I know that I could also use several computers and have 1 Kinect connected to each of those, but I would rather not purchase 3 or 4 extra computers just to run a Kinect on each.

    For reference, my current solution is to disable all of the Kinects using the device manager (actually "devcon" from the Windows Driver Kit), enabling the one I want to access, and then calling the GetDefault() method. It would be so much easier (and faster) if I could just simply do something like GetSensor(i) instead. 

    I also briefly tried fiddling with virtual machines, but was either constrained by USB pass through or Graphics Card pass through. Looking at the forums, it seems like there isn't a plan to support VMs.

    Any help or suggestions would be very much appreciated! Thanks!

    Friday, September 5, 2014 12:35 AM

All replies

  • I don't know whether your current solution is programmable or you do it manually, but you can always enable/disable USB ports using WinAPIs. Quick Googling should give you where in the registry(Frankly i dont remember). This would work if you know beforehand which Kinect to which port.

    Above is to kinda generate event. If you are looking for something like 1 kinect is already connected and then 2nd comes in, you will have to catch for an even using WM_DEVICECHANGE. A quick google should tell you how to handle this message. You will need message pump also in this case.

    BTW i assumed that you are using c++(for my convenience..:D:D)



    Saturday, September 6, 2014 1:52 PM