NDI slowing down framerate for >4K resolutions?

Diemo Schwarz's icon

Hi , I'm trying to work in 5K square resolution for dome projection, but sending video via David Butler's great jit.ndi.send is getting unusably slow (<20fps). I made the table below comparing fps and CPU for different resolutions and aspects (16:9, square) for output via HDMI and via NDI.
Also, while the Max CPU usage (on an M3 Pro) is around 65% with HDMI out (independent of resolution), it rises >200% with NDI.

Here is the test patch. I'd be grateful for tips how to optimize things.

ndi send resolution test.maxhelp
maxhelp 167.00 KB

Resolution : HDMI fps / NDI fps, NDI CPU %

HD :        75 / 60                             125%
2k x 2k:    75 / 60                             160%
4K:         75 / 40                             162%
4k x 4k:    70 / 27                             196%
5K:         66 / 26                             193%
5k x 5k:    40 / 16                             200%
6K:         50 / 19                             193%
6k x 6k:    could not allocate matrix / 14      212%
8K:         31 / 13                             197%
8k x 8k:    could not allocate matrix / 9       220%

Rob Ramirez's icon

strongly recommend NDISyphon, especially at that resolution

Diemo Schwarz's icon

Thanks Rob, you saved the day (again)! Now my actual patch runs at 70 fps @ 5k x 5k and NDISyphon takes the brunt at 380% CPU (which is fine, there are many cores...)

A minor inconvenience is that each time the patch is (re)started, one has to enable the stream in NDISyphon, and the latter will create a newly numbered stream, needing to be reselected on the receiving side. I'll check with AppleScript if this could be automated.