Steam recently released its In-Home Streaming feature to everyone. The feature allows you to install games on one PC and stream them via your home network to any other machine. Here’s how to get it set up (and fix some of the quirkier problems).
Step 1: Setup Your Streaming Server and Client
To use the In-Home Streaming feature, here’s what you’ll need:
- A host PC running Windows. Currently, streaming can only be done from a Windows PC. For the moment, this is probably for the best as more games are compatible with Windows than any other OS.
- A client computer. Any Windows, OS X and Linux PC running Steam can receive stream a game from your host machine.
- Beta client enrolment. Both machines need to have the Steam Beta client installed. If you do not already have the beta enabled, you can activate it in Steam by opening Settings. Click “Change” under “Beta participation” and choosing “Steam beta update” from the drop down. You’ll need to restart Steam afterwards. Do this for both the host and client computer.
- A sufficiently fast home network. It should go without saying that the two computers need to be networked together. A hardline is recommended, but if you’re using a wireless network, Steam recommends using either Wireless N or Wireless AC hardware.
Once you’ve got both computers connected to the network and running the beta client, here’s how to get the In-Home Streaming set up:
- Login to both computers from the same Steam account.
- Open your Library on the client computer to view games.
- Click the “Stream” button on individual game pages.
When connected to a network with another Steam-enabled host computer attached, games installed on any of the host machines will appear in the client Library. The normal “Play/Install” button will be replaced with a “Stream” button. You can, however, click the dropdown arrow next to the button to install the game locally if you’d prefer.
Assuming you don’t have any technical hurdles to overcome, the In-Home Streaming is relatively straightforward. In fact, if you’re already enrolled in the beta on both machines, you may not even notice that your computers can now stream between them. However, there are still a few oddities that can be cleaned up.
Step 2: Tweak Your Settings for Maximum Performance
While Steam does a pretty great job of making things effortless, there are still a few settings that are worth tweaking (or at least keeping in mind).
On the host machine: In the Settings menu (Steam > Settings), select In-Home Streaming on the left-hand side of the window. Under “Host options” click “Advanced Host Options” Here, you’ll be able to enable hardware encoding (which may be on by default) and “Prioritise network traffic”. The latter’s availability may depend on your network hardware, but if you’ve got a relatively recent router, enabling this option can help make your game streams a little less choppy.
On the client machine: Here’s where things get fun. In the same In-Home Streaming section of Settings, you have a simple radio button under “Client options” that allow you to choose between Fast, Balanced or Beautiful. They’re pretty self-explanatory and don’t require a lot of technical tweaking.
However, click the Advanced Client Options button and you can get some more fine-grained control. Your first option is “Limit bandwidth to”. This is set to Automatic by default. The manual options range from 3Mbit/s to 30Mbit/s, or Unlimited. If you have either a Wireless N or Wireless AC router, you can probably go as high as you need to without disrupting other network traffic. If you find your game is streaming at a slow rate, try manually turning up the bandwidth limit.
Alternatively, if your game is lagging and you don’t think bandwidth is the problem (say, you’re on a Wireless AC connection with no other users), you can try limiting the game resolution. In the second drop down box, you can choose 1080p, 720p or 480p as a hard limit for your host machine to stream. Obviously a lower resolution won’t look as good, but you can get a higher frame rate, which can mean the difference between victory and defeat in many games.
You can also select “Display performance information” in the client options dialog. This will add a small indicator in the lower left corner of your screen with the current streaming resolution and framerate.
In-Home Streaming has been in beta for several months and so far it seems like it’s paid off. The feature works relatively painlessly right out of the box with little setup. If you want to tweak your options though, you still have a few buttons and knobs to fiddle with.
Republished from Lifehacker
Comments
6 responses to “How To Setup Steam In-Home Streaming And Fix Its Quirks”
You don’t need beta enrolment, It’s part of the standard client now.
I’ve been using in-home streaming for a few months now, and I’m finding it very useful as I can now just leave my windows PC headless for games only.
In terms of performance, the biggest factor in the overall performance of the system is the Host machine’s CPU capability. Effectively, all the client is doing is decoding an x264 video, which is pretty lightweight.
The biggest killer to the experience, is latency. Valve give two measures of latency, input and video/display. Input latency is pretty much the ping time between systems, so on a LAN this is next to nothing. The display latency is how long it takes for the system to render then send a video frame, after first rendering the frame locally on the graphics card. This is the killer at present. Encoding x264 at monitor resolutions, at 30-60 FPS is hugely CPU intensive, and keep in mind that the game is still being rendered as if it was being played locally on the host. So, not only does encoding eat up CPU time, it can potentially be taking away CPU time from the game itself. This depends on how a particular game is optimised for multiple core systems, but in this case the more CPU cores or processing power you can throw at it, the better.
With this in mind, network bandwidth is the next component, as it will either relieve or exacerbate the CPU encoding bottleneck. The more network bandwidth available, the less the video stream needs to be compresed, the faster the CPU can render the stream.
I’ve tested streaming over wireless [n-band, 300mbps], and while input latency was no different to wired, display latency [hence, framerate] and CPU usage was MUCH higher due to the lower amount [and stability] of bandwidth available. Gigabit wired on host and client are a must for any high resolution setup.
There is hardware encoding available, which is available on Sandy Bridge and newer intel CPU’s, Kaveri and newer AMD APU’s and 7700 series and newer GPU’s. This removes the CPU bottleneck greatly. I would go so far as to say that a system which supports hardware encoding is almost a requirement if you want anything near seamless play.
A good compromise though if you are still trying to optimise performance, is to turn down streaming resolution to, say, 720p, and then make sure your in-game resolution is also 720p. This can be compensated by turning on advaced AA much higher than you otherwise might be able to run. Take as much load off the CPU as possible for encoding, and make up for it a bit with more post-processing on the GPU.
I’ve used this a little bit recently and it’s pretty awesome.
I tried playing a shooter over wifi on my laptop and it was ok but started to see tiny bit of lag. It’s not easy to notice but if you’ve ever played CS on 100-200 ping you know what I’m talking about. It’s just enough to be annoying for twitch shooters.
I feel like you can play things like bioshock without a problem.
The other thing I tried is DarkSouls2 on my HTPC connected to the TV. That’s a wired network but running off Ethernet-over-Power. No noticeable latency there. Everything runs very smooth and using a controller it’s nice and responsive.
I’ll definitely be using this for more console games on my HTPC/TV setup. The laptop can hold it’s own so I probably won’t bother with that unless I can’t be bothered downloading something (I’m looking at you elder scrolls online 60GB).
I want to try and get Rocksmith running on my TV instead of my monitor, and unfortunately my TV is just out of range of a 5m HDMI lead (not to mention having a HDMI lead running across the middle of the lounge room floor isn’t exactly a long term solution). I’m trying to choose between a wireless HDMI repeater or a HTPC box streaming Steam. Which would be the better solution?
Also, in the case of something like Rocksmith that requires a custom controller (1/4in jack-to-USB cable), do you plug that into the host or client?
whenever i click stream from the client PC the game runs simultaneously on both machines. By clicking stream on the client PC I thought it would only run on the client not both pc’s.
Yep, that is normal behaviour.
It isn’t running it on both machines, just the host. The client just receives a video stream of the content, and sends controls back.
The game is being rendered completely on the host PC, and it’s display then being encoded and sent as a video stream to the client. It allows very low powered machines to play games which need more power to run smoothly.
This is particularly useful for HTPC’s, or any other system you can have connected to your TV to use as a ‘console’. Run steam in big picture mode, and just let your big gaming rig in the other room do all the heavy lifting.
I really would like to use In-Home-Streaming. But on my side I am not able to get the machines visible in the device list. Host (Windows 8.1 Pro 64 Bit) doesnt see the Client (Windows 7 Home Premium 64 Bit) in the cabled LAN. I have removed any software like VirtualBox and removed unused network connections like VPN and also removed Kaspersky Internet Security 2015 completely from my host PC. On the client and host I have desabled the firewall. I have checked that only Steam is using port 27063. I have no further idea what else I can change to use this feature.
Any idea how to solve this issue?