Unity Scene for Visualizer Crashing

Whenever Azure Kinects are hooked up, unity will crash while trying to play the scene, It also looks like the drive write (disk 1 in the screen shot) maxes out for the duration prior to unity crashing. I couldn’t write down the errors, but took a screen shot to capture what I could.

Steps taken so far:
-we have uninstalled and re-installed the correct version of all packages and softwares in the visualizer documentation
-tried with & without the edge server running (edge server is running on same machine)
-tried with 1, 2, 3, 4, and 5 azure kinects attached to the PC
-confirmed all kinects work using the Azure Kinect Viewer

Welcome @Zach to our community!
We will do some tests in the Lab on Monday and install the virtualizer on an entirely fresh system. Let’s see if we can reproduce the error.

The Azure Kinect Camera has sometimes problems to work properly when its in a USB hub chain.
Many active extension cables use an USB hub chip to extend the signal. Just to exclude this error from the list, can you try attaching the cameras with a short USB cable to your computer (preferable the original)?

In case that this eliminates your error or for general scaling, we have tested multiple extension cables and eventually had success with the following: https://www.amazon.com/gp/product/B00DMFFL2W/

The disk usage might be related to an error log. I can think of the cameras registering but since the data is not arriving (due the cable issue) every camera frame throws an error into the log. I can see that two cameras are registered (visualization_0 and visualization_1).
We can also check on Monday if indeed it is an error log related to a camera initialization issue.

Thanks @valentin & @jhobin for looking into this

Just re-tested with one Kinect hooked directly to the PC and not going thru a cable and got the same results. Let me know if there are any other trouble shooting items we can do from our side to help out.

Good to know that it is not the cable. Thank you for checking that.
Within the Azure Kinect Viewer, when you start a camera you can click on device firmware version info. Could you tell me what version you are on for depth and rgb?

Looks like:
RGB: 1.6.102
Depth: 1.6.75

Ok we are all on the same page with all versions.
Just one last thing: Do you have any security software running that might block self compiled code from unity or libraries used by unity?

I dont think so, We have created and ran other unity applications off of this machine without issue in the past. I will have to double check with our IT guy though to confirm

Hi Zach,

I installed the unity virtualizer project on a fresh Windows installation with all windows updates and the latest Nvidia drivers. I am not sure if it needs to be the latest driver; however, the project uses CUDA. That requires Nvidia graphics cards.

I followed the entire installation procedure and the project run successfully.

Three points that could be tricky:

  1. I installed a fresh copy of Unity 2017.4.10f1 and went along with all standard settings.
  2. Azure Kinect Dev Kit 1.3.0 and Azure Kinect Body Tracking 0.9.4 need to be installed before executing ./checkout.sh. I had to install git from git-scm.com with all the standard settings to get into the Git Bash. chekout.sh copies the Kinect libraries into the unity project for it to work.
  3. I had to open the virtualizer Unity project and, within the project, import the OpenCV asset.

I was able to run the project with Unity version 2017.4.40f1 as well. Maybe that’s worth a try. It could be possible that this update eliminates a bug on your system.

Let me know if any of these reports can help you start the project.

Valentin

What form of crash do you encounter? It’s expected for Unity to hang for 30 seconds to a minute when first starting up. If Unity is encountering an exception then it would be useful to see the crash log.

@jhobin It was unity itself crashing, it would spin for about 5 mins, then the application would crash, the screen shot above is just before unity crashes, is the application saving a log anywhere so I can grab it for you?

Also, we ended up installing the virtualizer on another machine and got it to work, still not sure why It kept crashing on the other machine (best I can guess it there must be some other background application interfering that I am not aware of?)

Thanks again for all the help!

Perfect! Happy that you got it working. Maybe James has some more idea how to make it work on the first system.

Glad to hear it’s working on at least one machine! The only thing I can think of is if you give us the specs/system info of both systems so we can play spot-the-difference but I don’t have any compelling ideas right now.

Specs for the non working system:
CPU: Dual Xeon E5-2687W (24 cores @3.0GHz base speed)
RAM: 128GB
GPU: Dual Quadro P6000s

Specs for working system
CPU: Dual Xeon E5-2637 (8 cores @3.5GHz base speed)
RAM: 64GB
GPU: Quadro M4000

@Zach, could you remove one of the Quadro P6000 and try running the project? There is a lot of custom code to move a ton of data from USB to CPU to GPU and back to CPU. It’s possible that this code is not very happy with two graphics cards. We never tested that. Because moving data among GPU and CPU was such a fundamental problem to solve in this project, this experiment might be worth testing.