Receive Kinect V1 Images in FFGL plug - can't load more than one instance (Resolume)

Steps to reproduce the bug

Export plug using receive kinect v1 images. Open as source in a Resolume file. Try to drop a second instance of the source into the same file. Only the first instance will produce video.

Have you found a workaround?

Yes, you can delete the first source and drop in a new source, usually this works, however sometimes it doesn’t, not sure why.

Other notes

  • Vuo version: 2.42
  • macOS version: Mojave/Catalina
  • Mac model and CPU: I’m sure this happens on all computers, for example MBP 2017
  • Resolume version: 6.0.1
  • Have you been able to reproduce the bug? Yes, every time.
  • How severely does this bug affect you? It limits functionality within Resolume.

… I actually came here to report the more problematic issue - that occasionally resolume will not reliably find the kinect at all. But just right here and now it seems to be opening every time. While mostly the first instance of the plug functions well, after a crash for example, or doing something unusual within resolume - sometimes the kinect plug is very stubborn and does not want to work.

I suspect this is a bug within the coding of the “receive kinect v1 images”. The node should ideally not connect to the kinect until launched - however I suspect it is “always connected” to the kinect. I notice that Resolume runs a second background instance of the FFGL plug - apparently so that it maintains everything loaded into the system for easy launching. I suspect that this might be causing it to sometimes connect the background instance to the kinect instead.

Is it possible to alter the node so that it only connects to the kinect when required?

We confirmed the behavior that you’re seeing — multiple instances of Receive Kinect v1 Images don’t play well together. Once one instance gets ahold of the Kinect, other instances can’t access it.

Currently, the node connects to the Kinect when the composition starts and disconnects when the composition stops. When a composition is running within an FFGL plugin, it doesn’t get stopped until the host process (Resolume) exits.

It would be nice if multiple instances of the node could share the Kinect, but that’s not really feasible. Or you suggested altering the node so that it only connects when required. We could add Start and Stop input ports to the node. That might be inconvenient to use, though. In Resolume you’d have to be switching the ports on and off at the appropriate times.

Would it solve your problem if you were to run a Vuo composition separate from Resolume that inputs Kinect images and outputs them to Syphon or NDI? And then any number of FFGL plugins could receive the Syphon/NDI video?

Thanks for the response! Output NDI video from Vuo into resolume is a good idea, I didn’t think of that, I imagine that would be a solid workaround. :grinning: I’ll try that and report back.

Resolume does presets rather well, so you can quickly switch between different processes on the depth image. To create some sort of “presets” within Vuo would be a lot of fiddly programming.

While I’ve got you I’ll take the opportunity to point out that there is apparently some incorrect info in the documentation for the kinectV2 node. It implies that the kinectV2 won’t work on the earlier variety of usb3 ports. I’m using a 2012 macbook at the moment and it works fine.

2 Likes

Thanks, we’ll clarify that documentation.

Clarified documentation in Vuo 2.4.3.