// TOM'S HARDWARE US — HARDWARE & GADGET
Steam adds low-latency Pyrowave codec to Remote Play — new codec offers better game streaming on local networks but costs '5-10 times' more bandwidth
The codec was specifically created for the purpose of game streaming, taking advantage of the large bandwidth available on home networks.
When you purchase through links on our site, we may earn an affiliate commission. Here’s how it works.
Game streaming over your local area network is cool, but game streaming as typically implemented is basically a hack. It borrows video streaming technology and applies it to interactive games, which isn't actually a great fit, like so many cases of using a tool for a task it wasn't really designed for. Legendary open-source dev Hans-Kristian "TheMaister" Arntzen (known for the libretro framework and Retroarch frontend), decided to tackle this problem by making a video codec called Pyrowave specifically designed for in-home game streaming, and now, that exact codec is implemented in the Steam beta client.
Your LAN has less than 10 milliseconds of latency; less than one millisecond if it's wired. However, in-home game streaming rarely achieves latency anywhere close to that because the process of rendering the game, encoding a video, sending it over the network, and then decoding it (before you can even see the new frame and react) usually takes upwards of tens of milliseconds, meaning that even on a LAN it's possible to have noticeable input lag when streaming.
There are also possible compromises on image quality for in-home streaming. Typical video codecs like AVC and AV1 rely on a lot of "tricks" to reduce how much real data they need to use to encode a video stream; one of the most common is chroma subsampling, where a video uses less data to represent the colors in a scene, because human vision is much less sensitive to brightness than color. This is fine for a lot of games, but it can cause problems on the desktop as well as in games with lots of text (or similar fine elements), because the text develops nasty fringing that makes it hard to read. You can solve this by using 4:4:4 video, but that's actually not very well supported by common video codec hardware.
Arntzen's Pyrowave solves both of these problems (latency and quality) by working in a fundamentally different way from other video codecs. Instead of using Discrete Cosine Transforms and inter-frame encoding, Pyrowave is similar to Motion JPEG2000 and uses Discrete Wavelet Transforms along with intra-frame encoding. There are a lot of downsides to this approach, but a lot of upsides, too. You get very consistent quality from frame to frame (making it perfect for constant bitrate applications) and you also get excellent error resilience. Because Pyrowave is very simple and computed on the GPU's shader array rather than the video engine, which doesn't understand it, you also get insanely low latency, and there are no concerns about the capabilities of fixed-function hardware.
The downside? Well, it's in the headline: bandwidth. In the Steam beta client patch notes where Valve announced the addition of this feature, Valve notes that the codec uses "5-10 times the amount of bandwidth of other streaming codecs." So how much bandwidth is that, really? In a brief test of Phantasy Star Online 2: New Genesis, streaming to a Lenovo Legion Go S from a desktop, we clocked Pyrowave on default settings at about 210 megabits per second. That's over 26 megabytes per second of video going down the line, which is an incredible amount of data to be sending over a network so you can play a video game in bed without sacrificing visual quality or frame rate.
But most notably, it was tangibly more responsive than the usual Remote Play experience, and best of all, the image quality was quite exceptional, especially once we ticked on the 4:4:4 mode. Unfortunately, we weren't able to see if the GPU overhead was overbearing with an RTX 5070 Ti and frame rates capped at 120 FPS for streaming.
Just for clarity's sake, while it's possible that Pyrowave streaming could cause service interruptions for other people on your LAN (and thus isn't suitable f