Steam streaming: Difference between revisions
(→Client) |
|||
(One intermediate revision by the same user not shown) | |||
Line 14: | Line 14: | ||
= Configuration = | = Configuration = | ||
<blockquote> | |||
== Client == | |||
<blockquote> | <blockquote> | ||
<source lang="yaml"> | <source lang="yaml"> | ||
Line 20: | Line 22: | ||
View > Settings: | View > Settings: | ||
Remote Play: | Remote Play: | ||
- [x] | - [x] Enable advanced client options | ||
- video: beautiful | |||
- [x] hardware decoding | |||
- [ ] HEVC video # immediate crash on start stream | |||
- [x] low latency networking | |||
</source> | </source> | ||
</blockquote><!-- Client --> | |||
== Host == | |||
<blockquote> | |||
<source lang="yaml"> | <source lang="yaml"> | ||
# Host | # Host | ||
Line 37: | Line 44: | ||
- [ ] on Intel iGPU | - [ ] on Intel iGPU | ||
</source> | </source> | ||
</blockquote><!-- Host --> | |||
Finally, stream a game and run [[nload]] to determine bandwidth performance.<br> | Finally, stream a game and run [[nload]] to determine bandwidth performance.<br> |
Latest revision as of 16:19, 14 April 2024
Stream games over your local network.
You may also be interested in moonlight.
Firewall
https://support.steampowered.com/kb_article.php#networkports
# on host (in traffic?) UDP: 27031,27036 TCP: 27036,27037
Configuration
Client
# Client View > Settings: Remote Play: - [x] Enable advanced client options - video: beautiful - [x] hardware decoding - [ ] HEVC video # immediate crash on start stream - [x] low latency networkingHost
# Host View > Settings: Remote Play: - [ ] Change resolution to match streaming client # unecessary so far - [x] Dynamically adjust capture performance - [ ] Use NVFBC capture on NVIDIA GPU # network fail - possibly requires nvidia gpu on both sides? - [x] Enable Hardware Encoding - [x] on Nvidia - [ ] on AMD - [ ] on Intel iGPUFinally, stream a game and run nload to determine bandwidth performance.
For me at 1080p, bandwidth was just over 50 Mbps.
Troubleshooting
Show Performance Overlay
Enable detailed overlay stats
Steam > Settings: - Remote Play Tab: - Advanced Client Options: - Performance Overlay: Details # default, iconsThen in-game you can toggle it's visibility with
gamepad: select + y keyboard: # I think F8?Network Performance
- Watch bandwidth usage using nload
- Determine bandwidth type using tcpdump
- If network is congested, consider increasing buffer sizes
sysctl -q net.ipv4.tcp_window_scaling # want 1 sysctl -q net.ipv4.tcp_syncookies # want 1 # increase TCP send/recv buffers sysctl -q net.core.rmem_max # want high sysctl -q net.core.wmem_max # want high sysctl -q net.ipv4.tcp_rmem # want high sysctl -q net.ipv4.tcp_wmem # want high # set temporarily using: # sysctl -w net.ipv4.tcp_window_scaling=1
- autocap at 30Mbps https://www.reddit.com/r/Steam_Link/comments/3pj3ts/uncapping_the_30_megabit_bandwidth/
- https://steamcommunity.com/groups/homestream/discussions/0/483367798501608669/?l=thai&ctp=9
- https://gaming.stackexchange.com/questions/354049/steam-remote-play-slow-stutters-buffers-when-in-home-streaming-it-connects
- https://support.steampowered.com/kb_article.php?ref=4950-EBNM-7843
NOTE:
Apparently, steam streaming struggles with multiple network interfaces.
Connecting explicitly via ip address sometimes yields better performance.steam://open/console connect_remote <ip>:27036 # should see < 1ms ping over wireless N even, apparently
Settings Troubleshooting
- ensure game resultion matches display # (ex. rendering 1440p, but downscaling stream to 1080p tv) # this has given me +15fps - enable hardware encoding/decoding (on host/client)Performance Overlay Warnings
Warnings
Slow convert, display: # encoding faster than can decode Slow decode: Slow encode:Ensure your game, desktop are running at the resolution of the stream.
Otherwise, you'll getscale
, which means it's being scaled down, and decoded locally (which is slower).
https://github.com/ValveSoftware/steam-for-linux/issues/5591#issuecomment-1060051597Encoder: Game Vulkan RGB + libyuv + scale + NVENC H264 # bad Encoder: Game Vulkan RGB + libyuv + NVENC H264 # goodRemote Play Crashes
The streaming client exited unexpectedly (2)
I encountered this streaming with the intel igpu drivers.
On the streaming client
- Steam > Settings: - Remote Play: - Advanced Client Options: - [ ] Enable Hardware Decoding