OpenNI2 зависает, когда камера не подключена - PullRequest
0 голосов
/ 25 января 2019

Я пытаюсь построить фреймворк, используя Unity, который позволяет другим разработчикам добавлять в свой проект камеры движения, такие как Kinect или Asus Xtion.Для этого я использую OpenNI2 и модифицированную версию Zigfu Development Kit для работы ONI с Unity.Моя проблема сейчас в том, что когда я пытаюсь включить Zig, который сам по себе, кажется, загружает драйвер ONI, программа застревает в бесконечном цикле, если к компьютеру не подключена никакая камера.После некоторой обширной отладки кажется, что источником этого цикла является сам драйвер ONI во время ожидания потока от любой камеры движения, вызванной этой строкой:

OniStatus rc = waitForStreams(&stream, 1, &streamIndex, ONI_TIMEOUT_FOREVER);

То, что я ищу, - это простой методзапретить ONI заморозить мою программу.Я уже пытался обернуть код, который заставляет Zig запустить драйвер ONI внутри Thread, но это не сработало.Я мог бы также просто добавить предупреждение в мою платформу, чтобы другие разработчики не знали, что может пойти не так, когда их программа зависнет, но я думаю, это не лучший выбор.

...