Hacker News new | ask | show | jobs
by iso1631 91 days ago
We use JXS when latency is critical. Most h24/265 decodes will have a 10 frame glass-glass delay, JXS drops that to 3 or 4, at a cost of bandwidth (our UHD jxs streams are 1.5gbit rather than 200mbit for hevc)
2 comments

That's pretty depressing to read. x264 was handling the encoding side with sub-frame latency 15 years ago, and sub-frame decoding is significantly easier. "with –tune zerolatency, single-frame VBV, and intra refresh, x264 can achieve end-to-end latency (not including transport) of under 10 milliseconds for an 800×600 video stream"

But for some reason you can't make use of that and have to burn bandwidth instead.

A small part of the end-to-end process

https://www.obe.tv/how-to-lie-about-latency/

Bandwidth is cheap -- basically free, especially at this bitrate.

In theory it's a small part. But if you got that many frames of latency difference by changing codec, then it wasn't being a small part.

It's not that you should have gotten a magical 10ms latency glass to glass, it's that you should have been able to get 4 frames latency on h.264. But something prevented that, so I'm sad about it.

(And if you say the bandwidth was fine in your situation I won't argue, but using more than a gigabit extra is not usually thought of as free.)

Yeah, we've been deploying JPEG-XS for high bitrate streaming for a while.

A lot of our customers are moving their grading systems into data centres and streaming the images over IP back to their grading suites.

I've got it down to less than 1 frame for encode-transport-decode, but you've still got to copy the image to an SDI card and wait for that to clock out.