Can I use the Kinect API on a virtual machine? - kinect

This programming guide implies that this is possible, so I figure what the heck.
Right now, though, it doesn't work.
Host OS is Vista 64-bit, VMWare Workstation 6.5.3 is running Windows 7 Enterprise 32-bit.
Installed Software on the VM:
Visual C# 2010 Express
Microsoft Server Speech Platform Runtime
Microsoft Server Speech Recognition Language - Kinect
Microsoft Speech Platform SDK
Kinect for Windows SDK Beta
I plug in the Kinect, the device is recognized by the VM, then I run the Sample Shape Game and it doesn't recognize the device. It says "Plug in the Kinect and try again" which turns out to be error 0x80080014, which leads to
http://social.msdn.microsoft.com/Forums/en-US/kinectsdknuiapi/thread/4da8c75e-9aad-4dc3-bd83-d77ab4cd2f82/
which gives me two things to look at:
is it plugged in with the special cable? yes
are all 4 entries in the Device Manager? no
In the Device Manager, I see a "Microsoft Kinect" group containing Microsoft Kinect Audio Control, Microsoft Kinect Camera and Microsoft Kinect Device, but there is nothing under "Sound, video and game controllers" other than VMware VMaudio. "Kinect USB Audio" should be there.
I'm guessing that there is some further twiddling I have to do with the VMWare USB / hardware options (whatever that tray with the USB / CD / HD / floppy etc icons is called) or some deft combination of rebooting and (un)plugging, but I'm almost out of enthusiasm.
Any ideas? TIA
EDIT: I realized that I had some lingering drivers on my host (Vista) system from OpenKinect. After removing them, I can no longer see the Kinect at all in the VM. Hmm.

There is this on read.me
Virtual machines: You must run applications built with the Kinect for Windows SDK Beta in a native Windows environment. Kinect for Windows applications cannot run in a virtual machine, because the Microsoft Kinect drivers and this SDK Beta must be installed on the computer where the application is running.

just to share that (not really understood how) VM Workstation 8 running in a host win 7 x64 with guest OS Ubuntu 10.04 sucessfully detected and installed Kinect drivers.
I was able to test it with libfreenect (OpenKinect Project) http://openkinect.org/wiki/Getting_Started#Manual_Build_on_Linux
best regards,

I'm late to the party, but we've been running and developing for the Kinect with Windows 7 running under VMWare under Mac OS X Mountain Lion.

I'm not a Computer Scientist, but I thought Turing showed that a universal Touring Machine was basically the same as physical hardware. I've had Distributed COM+ running on 3 or 4 VM's on the same physical hardware, but somehow the Kinect device is different? I don't buy that at all.

The most recent version of Microsoft Kinect for Windows (v1.6, possibly slightly earlier versions) in combination with the "Kinect for Windows" hardware does work inside a virtual machine. I run this setup on a MacBook Pro, Parallels 7 and Windows 7.
Note that a Kinect for Xbox does not work inside a virtual machine.

This page from Microsoft says that the "Kinect for Windows" device should work in a VM, but that the "Kinect for XBOX" does NOT work.

First of all you just need two Things to be installed:
libfreenect
libusb
after that you should set three flags to 0x02 at the line
typedef enum {FREENECT_DEVICE_MOTOR = 0x02,FREENECT_DEVICE_CAMERA = 0x02,FREENECT_DEVICE_AUDIO = 0x02,} freenect_device_flags;
Inside the headerfile located at /usr/local/include/libfreenect libfreenect.h but you will lose the ability to control the movement and the the microphone usage will be disabled so don't even try to access them or your device might get damaged after that you should also set
#define PKTS_PER_XFER 32
#define NUM_XFERS 6
inside your libfreenect/src/usb_libusb10.h file at the linux Line
After that rebuild your libfreenect by
mkdir build
cd build cmake ..
make make install.
Than Restart your virtual System and plug and connect only the Kinect Camera Device and no other Kinect device during start of the VM. When System is up you could test your device is properly working by switching to your previously created libfreenect build directory and go to bin there you run ./freenect-camtest you should get no or only a small number of package losses if a lot of losses occur try restart your vm with the camera device pluged in and already connected to your vm. You might need to active disconnect and connect the Webcam from the VM during startup to receive images this should be done during first seconds of VM Boottime!
Works with Ubuntu 14.04 and Workstation 10 and 11 and 11.1
HOST OS Windows 7 and Kinect SDK installed and Kinectdevice for Windows
Also it seems to be quite unstable you often have to restart your virtual system if you can't receive images from your Kinect. But if you once received images don't unplug device or you won't get data until you reboot virtual system with Kinect Camera connected to it.
=> This actually solved the problem otherwise to much frames get lost and its not possible to display proper image!

Related

Windows virtual machine on a Pixel Slate?

I'd like to install a Windows virtual machine on one of my Chrome OS devices, ideally my Google Pixel Slate tablet, as it's quite powerful and is not being used. Is it possible to run a Windows VM on a Pixel Slate tablet? If so, which virtualization platform should I use?
I also have a Lenovo ThinkPad X230 on which I've installed Chrome OS Flex. It's a bit slow, but is also an option. As a last resort, I could also use my ThinkPad Carbon X1, which is running Chrome OS Flex, but I'd rather not, as it's my main computer. It's my understanding that Chrome OS Flex does not currently support Windows virtual machines, although Google is planning this for the future.

Kinect v2 on Windows 7

So I finally got my two Kinect v2's in the mail, and was looking forward to get some raw data from them and see how much they interfere with each other. I went to go download the SDK, and for some reason I had never noticed the Windows 8 requirements... As in Windows 7 isn't supported.
This feels pretty bogus and unnecessary, but fine I can't do anything about that. Before I waste some money to upgrade my machine to an OS that I really don't want, is there any way to get the Kinect v2s to talk to a Windows 7 machine (or maybe even Ubuntu)? I don't need any of the fancy skeletal detection or anything; I just want raw xyz-rgb data. I was reading about OpenNI (and their new Apple overlords), and I was hoping that by some miracle their last open source distributions would be forwards compatible with the Kinect v2s?
TL;DR: Are there any free SDKs that can interface with a Kinect v2 on Windows 7-64bit?
look at libfreenect2
It looks like its not ready yet but there are people working on it. So you might want help them along.
Update 2014-10-28
The Project is live and kicking and works fine
Just dropping by to say that I successfully 'installed' the Kinect 2 SDK to windows 7 and it is being recognized by driver4vr.
I'm not precisely sure which files where required so I'll just post my process.
Install VirtualBox (and enable CPU virtualization in bios to support 64bit OS)
Install win 8.1 x64 in VirtualBox
Monitor the VirtualBox c-drive for changes (I used spy-the-spy)
Download and install the Kinect 2 SDK in VirtualBox
Check spy-the-spy for all files added, and copy them to your Windows 7 OS on the same location. (It also installs some VC redistributables, so skip the files already there)
Reboot windows 7 and enjoy Kinect 2.0 on the final decent MS OS.
The Windows 8 is MINIMUM requirement to developing kinect v2
you do not need use Skeleton(kinect V1) or Body(Kinect V2) to track body or skeleton .
you need use to MultiFrameSource Class

Emulator cannot run because of Hyper-V Error

I have this error message:
The windows phone emulator requires Hyper-V. Your PC is missing the
following pre-requisites required to run Hyper-V:
I cannot run my project on windows 8 phone emulator since days. I searched on internet, still I couldn't solve my problem. Everyone says open Control-panel, then click turn-off or turn on windows features, then choose hyper-v option. When I clicked turn off or turn on windows features there is no option about Hyper-V. Can anyone help me?
My computer features:
windows-8 Professional (64Bit)
intel core i7 processor
8Gb ram
First step
1- turn on hyper-v from bios
read this :
http://blogs.technet.com/b/canitpro/archive/2014/03/11/step-by-step-enabling-hyper-v-for-use-on-windows-8-1.aspx
2- turn on hyper-v from windows
At the Start Screen, swipe the right hand side of the screen and select the Search Charm.
Type turn windows features on or off and select that item.
Select and enable Hyper-V.
If Hyper-V was not previously enabled, reboot the machine to apply the change.
I formatted my os from windows 8 pro to windows 8 enterprise and I solved my problem easily.I know it is not a logic solution but it worked.
In order to run Windows Phone 8 emulator you need to enable Hyper-V technology in the BIOS of your PC. See the detailed article on how to do this.
First you must turn on hyper-v from bios and then turn hyper-v from windows featured list restart and then will work ..

Is it possible to use Windows Phone 8 Emulator outside of current PC

I've installed Windows 8 as guest in Hyper-V VM. Tried to launch WP8 emulator and failed.
So I have a question: Is it possible to reuse WP8 emulators in host system to develop inside virtual machine?
As far as I know - it's not possible, you can only debug on real devices or emulators running on the same machine. Also the machine for running emulators must run on bare metal, not in virtualized environment because of some requiredm CPU features like SLAT.

Kinect SDK installed, Camera Features do not work

I have the same problem with this post: MSDN Post. It seems nobody answered with a working solution on that thread.
The symptoms:
Kinect SDK 1.5 installed.
The Kinect device is recognized and drivers seem to be loaded correctly.The speech demo works correctly.
Skeleton Viewer shows "Could not enable Skeleton Tracking".
Shape Game starts, but does not track anything.
Kinect Explorer starts the small windows only showing that it has connected to the Kinect, the black window does not open. If I close the white window, the kinect explorer is still running I have to quit it through the task manager.
When I unplug and plug the USB after I open Kinect explorer; it says insufficient bandwith.
I tried:
Updated BIOS.
Updated motherboard software. (ASUS Maximus IV Gene-Z, Gen3)
Removed all USB's and plugged them all.
Restarted windows. (several million times)
I uninstalled and re installed. Kinect SDK 1.0. (but everything is the same)
My OS: Windows 7 64 bit Ultimate.
I have been struggling with this for 1 complete day. Any suggestions will be greatly appreciated.
EDIT: I tried my Kinect device on another computer (laptop), and it works.
If the Kinect shares a USB Controller with other devices, a problem such as yours can happen easily.
Try the following: Unplug all USB devices, then connect only the Kinect to your computer. If you have USB mouse and/or keyboard, plug those into a different set of ports (for example front usb ports if you have the Kinect plugged into the back of the computer). Then, try running the SDK's sample applications.
Should this approach fail, something might be wrong with your USB controller(s).
One more option: Try running the sample applications on a different Windows computer, preferably a laptop of some type, since you won't need to plug in any additional USB devices.
If this approach fails, your Kinect is most likely defective. In which case you can get a replacement or refund from your retailer, if the purchase didn't happen too long ago.
Best of luck to you!
I finally was able to made my kinect work. This MSDN Discussion helped me to do that.
The solution:
Uninstall all Kinect Drivers from Control Panel.
Reinstall Kinect SDK.
(IMPORTANT) Make sure to skip getting drivers from windows update during driver installation.
And yay! It works beautifuly ..
The same happened with me; I noticed a windows update related to Kinect, installed it. Kinect stopped working. Installing SDK from May 2d 2012 didn't fix the problem. Rolling back to February 2010 SDK didn't fix it either. At first I guessed that Microsoft doesn't want us to use Kinect for Xbox any more, and this is their way of telling us to buy Kinect for Windows... well, may be - but in my case Kinect Camera driver was somehow updated to Version 1.5 (May 2, 2012), while everything else was on version 1.0. Installing original driver fixed the problem.