Realtime feed and file input workflow

Hello Nuitrack geeks!
I’m testing Nuitrack for an upcoming project which I should detect soccer kick motion.
Right now I’m testing with Realsense D435 and Orbbec Astra on Windows 10.
I installed Nuitrack SDK and most of Nuitrack examples are working properly for both of D435 and Astra.
(OpenNI exmales don’t work which is installed under /Program files/OpenNI/)
I’d like to make swichable Realtime mode and Non-realtime mode for my application.

Realtime Mode:
Connect the camera and generate skeleton.

Non-realtime Mode:
Playback recorded ONI file and generate skeleton. (for test and development)

I noticed Nuitrack SDK does not provide playback feature for skeleton tracking.
But OpenNI 1.5 and OpenNI 2 itself has record and playback feature so I checked these API.
But even this route, I’m stacked because …

  • OpenNI 1.5 does not work with realtime input (it works with file input)
  • OpenNI 2 + Nite2 does not work with file input (it works with realtime camera input)

Does anyone have a clever solution for this?

Hi hiro,

To run Nuitrack with .oni file, open %NUITRACK_HOME%/data/nuitrack.config file in a text editor and set the FULL path to the .oni file in the OpenNIModule.FileRecord section. Please note that Nuitrack Pro license is not compatible with this mode, i.e. you will have 3 minutes time limit.

1 Like

Thank you for quick reply Olga.
I think this is super helpful since I can record ONI file and then work without depth camera. I will test this feature asap.

Do you have a plan to support BAG file playback feature which is supported in Realsense SDK 2.0?
Thank you again.

To run Nuitrack with BAG files, open %NUITRACK_HOME%/data/nuitrack.config file in a text editor and set the FULL path to the BAG file in the Realsense2Module.FileRecord section.


Thank you so much!
I successfully playback oni file and bag file via nuitrack.config.
This is very useful!

Hi hiro,
Currently, I am also developing a project that needs recording and then post-processing.
May I ask after modifying .config file, how did you manage to playback with .bag file? Is it through OpenNI 1.5 in your previous post or should their sample code also work?
Thank you very much!


It’s through nuitrack SDK.

And you could also change config from Nuitrack SDK.
I forgot name of function but something like void setConfig()

Thank you hiro, I managed to playback also.
Some advice for new developers may have the same problem,

  1. make sure the path is added \nuitrack\bin, both user variables and system variables. So that you do not face the error ‘System.DllNotFoundException’. (But maybe I am the only one encountered it :p)
  2. directly modify the .config file does not always work, at least in this case, I added path in the Nuitrack::setConfigValue of C# file.
1 Like

Hi hiro,

I was just wondering if you tried adjusting the fps when you did the playback, since I found it was fixed at 30 fps and independent to the fps of the raw stream file which was 90. I tested with Nuitrack.SetConfigValue(“Realsense2Module.Depth.FPS”, “90”) and it did not work.


Unfortunately I didn’t try high framerate playback…


I downladed the c# example code and modified the config file and got bad config value exception. Do you have any idea why it’s happening?

NuitrackException (BadConfigValueException)

Please provide us with the information about your environment:
• OS
• Nuitrack version
• Sensor model