Можно ли использовать Kinect API на виртуальной машине?

Это руководство по программированию подразумевает, что это возможно, поэтому я понимаю, что это за черт.

В настоящий момент это не работает.

Хост-система - 64-битная Vista, VMWare Workstation 6.5.3 работает под управлением Windows 7 Enterprise 32-bit.

Установленное программное обеспечение на виртуальной машине:

  • Visual С# 2010 Express
  • Время выполнения речевой платформы Microsoft Server
  • Язык распознавания речи Microsoft Server - Kinect
  • SDK для платформы Microsoft Speech Platform
  • Бета-версия Kinect для Windows SDK

Я подключаю Kinect, устройство распознается виртуальной машиной, затем я запускаю Образец формы игры и не распознает устройство. В нем говорится: "Включайте Kinect и повторите попытку", которая оказывается ошибкой 0x80080014, что приводит к http://social.msdn.microsoft.com/Forums/en-US/kinectsdknuiapi/thread/4da8c75e-9aad-4dc3-bd83-d77ab4cd2f82/ который дает мне две вещи, на которые можно смотреть:

  • Он подключен специальным кабелем? да
  • все 4 записи в диспетчере устройств? нет

В диспетчере устройств я вижу группу "Microsoft Kinect", содержащую Microsoft Kinect Audio Control, Microsoft Kinect Camera и Microsoft Kinect Device, но нет ничего в разделе "Звуковые, видео и игровые контроллеры", отличные от VMware VMaudio. "Kinect USB Audio" должен быть там.

Я предполагаю, что есть еще кое-что, что связано с параметрами USB/аппаратного обеспечения VMWare (независимо от того, что называется подносом с иконками USB/CD/HD/floppy и т.д.) или некоторой ловкой комбинацией перезагрузки и ( un), но я почти не в восторге.

Любые идеи? ТИА

EDIT: Я понял, что у меня были некоторые затяжные драйверы на моей системе хоста (Vista) от OpenKinect. После их удаления я больше не могу видеть Kinect на виртуальной машине. Хм.

Ответ 1

Это на read.me

Виртуальные машины: вы должны запускать приложения, созданные с помощью бета-версии Kinect для Windows SDK, в среде Windows. Приложения Kinect для Windows не могут работать на виртуальной машине, так как драйверы Microsoft Kinect и эта бета-версия SDK должны быть установлены на компьютере, на котором работает приложение.

Ответ 2

просто поделиться этим (не совсем понял, как) VM Workstation 8 работает на хосте win 7 x64 с гостевой ОС Ubuntu 10.04 успешно обнаружил и установил драйверы Kinect.

Мне удалось проверить его с помощью libfreenect (OpenKinect Project) http://openkinect.org/wiki/Getting_Started#Manual_Build_on_Linux

С наилучшими пожеланиями,

Ответ 3

Я опаздываю на вечеринку, но мы работали и разрабатывали для Kinect с Windows 7 под управлением VMWare под Mac OS X Mountain Lion.

Ответ 4

Я не компьютерный ученый, но я подумал, что Тьюринг показал, что универсальная Touring Machine в основном такая же, как и физическое оборудование. У меня был распределенный COM +, работающий на 3 или 4 виртуальных машинах на одном физическом оборудовании, но каким-то образом устройство Kinect отличается? Я вообще этого не покупаю.

Ответ 5

Самая последняя версия Microsoft Kinect для Windows (v1.6, возможно, несколько более ранних версий) в сочетании с аппаратным обеспечением Kinect для Windows работает внутри виртуальной машины. Я запускаю эту настройку на MacBook Pro, Parallels 7 и Windows 7.

Обратите внимание, что Kinect для Xbox не работает внутри виртуальной машины.

Ответ 6

Эта страница от Microsoft говорит, что устройство Kinect для Windows должно работать на виртуальной машине, но что "Kinect для XBOX" НЕ работает.

Ответ 7

Прежде всего вам нужно только две вещи для установки:

  • libfreenect
  • libusb

после этого вы должны установить три флажка в 0x02 в строке

typedef enum {FREENECT_DEVICE_MOTOR = 0x02,FREENECT_DEVICE_CAMERA = 0x02,FREENECT_DEVICE_AUDIO = 0x02,} freenect_device_flags;

Внутри файла заголовка, расположенного в /usr/local/include/libfreenect libfreenect.h, но вы потеряете возможность управлять движением, а использование микрофона будет отключено, поэтому даже не пытайтесь получить к ним доступ или ваше устройство может получить повреждение после этого, вы также должны установить

#define PKTS_PER_XFER 32

#define NUM_XFERS 6

внутри вашего файла libfreenect/src/usb_libusb10.h в строке linux После этого перестройте свой libfreenect на

mkdir build 
cd build cmake ..  
make make install.

Затем перезапустите виртуальную систему и подключите только устройство Kinect Camera Device и другое устройство Kinect во время запуска виртуальной машины. Когда система вставлена, вы можете проверить, правильно ли работает ваше устройство, переключившись на ранее созданный каталог сборки libfreenect и перейдите в bin там, где вы запустите ./freenect-camtest, если вы потеряете или потеряете только небольшое количество потерь пакетов, если много потерь попробуйте перезапустить vm с подключенным устройством камеры и уже подключенным к вашему vm. Вам может потребоваться активное отсоединение и подключение веб-камеры от виртуальной машины во время запуска для получения изображений, которые должны выполняться в первые секунды загрузки VM!

Работает с Ubuntu 14.04 и рабочими станциями 10 и 11 и 11.1 ОСНОВНЫЕ ОС Windows 7 и Kinect SDK установлены и Kinectdevice для Windows Также кажется, что вы довольно нестабильны, вам часто приходится перезапускать вашу виртуальную систему, если вы не можете получать изображения с вашего Kinect. Но если вы когда-то получили изображения, не отключите устройство или вы не получите данные, пока не перезагрузите виртуальную систему с подключенной к ней камерой Kinect.

= > Это фактически решило проблему иначе, чтобы многие кадры потерялись, и невозможно отобразить правильное изображение!