VuoCompositionLoader only comes into play when running a composition from the editor. When you run a composition, Vuo spawns a process called VuoCompositionLoader. VuoCompositionLoader is a middle layer between the editor and the composition that makes live editing possible. As you can see in Activity Monitor, a separate VuoCompositionLoader process is created for each running composition.
When you run an exported app, there's no editor or middle layer, just a process for the composition itself. As Activity Monitor shows, there's a separate process for each app (even if they have the same name).
Since the limit on open files is per-process, you should be able to split your 8-NDI app into 2 x 4-NDI apps and avoid the crash… Yep, I tested and it seems to work.
Thanks for the links, will read through! I want to upload a FBX into an app called SuperWorld which has a AR layer mapped on top of Google Maps. I'd be uploading a 3D object for them to add into their app and the format they require is FBX. So I was wondering if there was anyway I could basically export a Vuo file into that format with the textures etc.
Thanks for the explanation! Does this mean that the Vuo Composition Loader runs as one process when two or more exported apps are running though? As two different applications with 4 I/O each also will crash? Or could this be because of app/composition naming (not sure if I was particularly careful there)?
The operating system imposes a limit on the number of "files" that a process can open. "Files" includes not only regular files but other things like network sockets, pipes, and the "kqueue" mentioned in the error message.
Each NDI send/receive node adds to the number of open "files" — because of course it needs those to be able to communicate with other nodes or devices.
The reason your composition doesn't crash when run from the Vuo editor is because we happen to have already increased the number of open files it is allowed (to fix a different problem). To resolve this bug report, we'll similarly increase the number of open files allowed for exported apps. That will fix your crash.
As a workaround until then, you can run this command in Terminal to increase the number of open files allowed:
sudo launchctl limit maxfiles 1024 unlimited
(This is a system-wide setting, affecting all processes and not just your NDI app. It will reset after you reboot, unless you do more work to make it stick.)