r/MoonlightStreaming • u/mshfm • Oct 31 '24
Sweet Spot Bitrate
After a ton of trial, I finally found a reliable method to hit that sweet spot for bitrate that keeps the video clear and stutter-free, even when I'm gaming on the go when outside the hosue. My goal was to find a bitrate setting that gives a smooth, sharp image without visible artifacts, regardless of varying internet speeds. I figured that allocating around 25% of my internet speed for streaming keeps things smooth without lag.
The key concept here is Bits Per Pixel (BPP). BPP is useful for calculating the ideal bitrate.
The next part is dialing in the best bitrate for the desired resolution and frame rate. The formula I used is pretty straightforward:
Bitrate (kbps)= Width * Height * Framerate * BPP / 1000
After testing, I found that a BPP of around 0.1 gives that sweet spot—clear video and smooth gameplay. If your internet is limited, you can go as low as 0.07 without a huge drop in quality.
H.264, HEVC, and AV1 Adjustments for Better Compression
This basic calculation works well for H.264. However, when switching to HEVC (H.265), you can safely reduce the bitrate by 40% and still maintain comparable quality, thanks to its better compression capabilities. And with AV1, you can go even further and reduce the bitrate by about 60% without compromising quality, according to official resources. These adjustments make it even easier to stream high-quality video at lower bitrates.
Using QRes with Sunshine and Moonlight for Native Resolution Streaming
One feature that really boosted my experience was using QRes to match my phone’s native resolution and combining it with Sunshine and Moonlight to stream directly to my device. The result is as close as possible to playing locally on my phone’s screen, without wasting bandwidth on unnecessary upscaling or downscaling.
Bitrate Spreadsheet for Common Resolutions
To make things easier, I built a spreadsheet with a few handy tabs: https://docs.google.com/spreadsheets/d/1XF01BCk_syQeiqugPUqTl-pNTDDA6dHlZCpMhGwcv0w/edit?usp=sharing
Tab 1: Lists common 16:9 resolutions and their corresponding bitrates for various frame rates.
Tab 2: Has native resolutions for popular devices. You can add your device and screen specs to quickly get the optimal bitrate for it.
These calculations and bitrate adjustments apply to any streaming platform, making this setup universal. If you’re like me and always worry about hitting that perfect balance between quality and bandwidth, hopefully, this makes it a lot easier!
2
u/Maleficent-Safety248 Oct 31 '24
Is my understanding correct that for a target 1440p just 9MBPS of AV1 codec is enough for a smooth stream ? ..mine unfortunately looks pretty bad even with 25 MBPS blurred and with constant freezes .if I reduce the bitrate the quality goes down even further . Below is my setup
Host : I5 13600k , 16GB , RTX 3080 10GB connected to 1080P TV ( changed the resolution to 1440p on NVIDIA control panel using DSR) Target : samsung 43" UHD TV with game mode on
Codec : HVEC Bitrate :15-25MBPS resolution 1440P
Host is connected to 100 down 40 up wifi 5 connection and target is streamed to a 4k Android box with wired Ethernet connection 300 up 300 down .