upvote
TIL: JPEG XS - an image and video codec that offers both visually and mathematically lossless quality for low latency implementations.

Additionally, JPEG XS compressed content is indistinguishable from the original uncompressed content.

https://en.wikipedia.org/wiki/JPEG_XS

reply
I've had great results using JPEG-XS to transport video for colour grading in feature film & TV post production. At 3:1 or 4:1 compression ratio is effectively lossless.

It is patent-encumbered though, you have to pay license fees to deploy it.

reply
Isn't the point of JPEG to have lossy compression for your photos that still looks fine? As opposed to something like PNG, which has lossless compression
reply
"JPEG" is short for Joint Photographic Experts Group, an ISO/ITU group that creates a lot of imaging standards. The JPEG image format you're thinking of is only one of the formats they've created.
reply
The Joint Photographic Experts Group manages many standards, generally each called "JPEG [something]". The one we most commonly call "JPEG" is just one of them.
reply
deleted
reply
Reading that it looks like the point of JPEG-XS is to have near-lossless compression for raw photo and video data while having extremely high throughput.
reply
JPEG XS supports either near lossless or truly lossless encoding depending on encoder configuration.
reply
> Additionally, JPEG XS compressed content is indistinguishable from the original uncompressed content.

It can be indistinguishable, as long as you stick with lossless or very low compression ratios. It falls apart at typical JPEG XL compression ratios.

reply
Not royalty free, unfortunately.
reply
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)
reply
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.

reply
> gfxcapture: Windows.Graphics.Capture based window/monitor capture

> This source provides low overhead capture of application windows or entire monitors. The filter outputs hardware frames in d3d11 format; use hwdownload,format= if system memory frames are required.

This would strongly alter my plans if I were to develop an OSS Discord alternative. Chromium originally looked like a better core to start with largely due to its mature screen capture API. WebRTC is the other big thing, but there are other ways to do that. Native desktop apps (i.e., not browser based) are beginning to look much more compelling to me now.

reply
If you were doing this, consider cribbing from https://github.com/obsproject/obs-studio/tree/master/plugins... which offers a variety of solutions including some rather exciting looking process injection (called "game" there).

I wonder if "entire chat app functions as OBS plugin" would work? Would solve the AV streaming side of the functionality.

reply
You could always use Windows.Graphics.Capture directly.
reply