Sorry to mislead, but my previous figures were based on a 1920x1080 source, not 4K. 3840x2160 does not do so well. Sending rate is the same as that produced by NDI up to a point. I see around 24 fps for a 4K source, so it doesn’t matter if it’s running at 60 fps, that rate will not be achieved for the Spout output.
The function that takes the time and consumes GPU resources is loading the texture with pixel data from the CPU, the OpenGL function is glTexSubImage2D. Unlike NDI, the data is uncompressed so time per frame is increased significantly with the 4K frame size.
It certainly uses GPU resources but I can’t achieve any better. I have tried different methods such as receiving into pixels instead of a texture, but it isn’t as efficient and at some point the NDI pixels have to be uploaded to a GPU texture.
Changing the refresh rate of the monitor will change the openframeworks draw cycle speed and rate at which the NDI source is sampled. I am not sure how this would interact with the NDI source rate.