Rainway Changelog

What's new in Rainway 1.0.7.0

Apr 2, 2019
  • Better Compression:
  • The video compression technology used by Rainway, H.264, sends a stream consisting of different kinds of frames. I-frames are full pictures, which can be decoded without context. They’re much larger (about 10×) than P-frames or B-frames, which roughly just describe how the pixels move between this frame and the previous or following ones.
  • This works well for compressed video files, but it causes trouble in a low-latency streaming environment like ours. The larger I-frames take longer to transmit and decode, which causes the stream to visibly hitch for a few milliseconds whenever a full picture is sent.
  • We tackled this problem head-on with a technique we call Frameless Encoding. We got rid of the hitches in the stream by entirely obviating the need to ever send full frames, smoothing out the bandwidth usage. The average frame size of a stream is now around 4 kilobytes of data. We’ve also drastically improved the speed at which we encode video while lessening Rainway’s impact on system resources.
  • Lower Latency:
  • With the release of 1.0.7, we’ve begun rolling out Coffee, our highly efficient networking protocol.
  • A significant challenge our standard Spitfire library struggles with is message fragmentation. In previous versions of Rainway, large data had to be split up before being sent, and reassembled once received by the client. On Android and Chromebook devices, this operation was painfully slow, which resulted in higher latency and (in the case of lost data) noticeable hitches in the stream.
  • Coffee brings higher throughput and lower latency, making near-native performance possible in the browser — even when streaming from the cloud to a handheld device.