CESNET / UltraGrid

UltraGrid low-latency audio and video network transmission system
http://www.ultragrid.cz
Other
485 stars 55 forks source link

Best latency configuration with high quality #374

Open zbynekdrlik opened 4 months ago

zbynekdrlik commented 4 months ago

Hi, I am looking for best configuration for lowest possible latency in this scenario:

  1. Powerful windows pc with spout out from resolume TO other powerful windows pc (possible hdmi/sdi out). In this configuration we are able to provide optical 10gbit connection.
  2. powerful windows pc with spout out form resolume TO raspberry pi or other suggested mini pc

We like to replace sdi connection from source windows pc to led wall processor and have similar latency. We have done some tests today and be able to get 3 frames latency in first scenario. Is there possibility for lower latency? Could this latency be also on some rpi? Which compression should be used when we like to have 2.5gbit lines with lowest latency?

zbynekdrlik commented 4 months ago

Hi, reaction from dev team please :)

alatteri commented 3 months ago

I would think a non-temporal comrpession algorithm would provide the lowest latency. Maybe try JPEG, Cineform, Prores.

MartinPulec commented 3 months ago

We have some here some latency measurements but unfortunately the numbers are quite dated. Basically, OpenGL with without sync-on-vblank provided best latency (but the vsync may be required). It is is possible, that Vulkan now would perform better now.

Moreover, there is a fixed 1 frame latency added at the receiver. If your network doesn't reorder packets, you can try to lower it even to zero.

Generally, I think that 2 frames may be feasible. It depends how you measure it - in the above-mentioned measurements, the capture card added also 1 frame delay.

For the RPi - hard to tell, we didn't measure. But as Alan proposed, it is worth trying JPEG to fit the link speed, ideally GPUJPEG on the sender. I have doubts if RPi would be powerful enough for Cineform or ProRes decode.