Ever more gaming
Christian Cawley discovers that you don’t need Steam Link to stream games from your PC to a Raspberry Pi.
Christian Cawley discovers that you don’t need Steam Link to stream games from your PC to a Raspberry Pi, and employs another game-streaming system.
Raspberry Pi computers have become increasingly popular since their first appearance, but remain far too low a spec for serious gaming. However, thanks to game streaming software like Parsec, you can play games on any TV in your home, streaming the title from a dedicated gaming PC through a suitable Raspberry Pi. The result is a slick gaming experience that to all intents and purposes looks as though it is running on the Pi.
While a similar experience can be enjoyed with the
Steam Link software from Valve (which turns the Raspberry Pi into a version of the now-discontinued Steam Link box), Parsec adds some useful features to enhance the gaming experience.
By the time you’ve set this up, you’ll be re-evaluating just how you game on your PC. Whether you’re using a Linux PC for gaming, Windows or even macos, there’s a strong chance you might be considering locking it away into a dedicated, ventilated area. Relying on streaming via the Raspberry Pi is a realistic alternative thanks to Parsec.
There’s almost no catch with this: you can play and stream any PC game, overcoming the Pi’s hardware limits. The only unavoidable downside is that a certain amount of lag will be introduced to gameplay, as data needs to be encoded and decoded at each end, as well as travel to and from each computer.
Nothing unusual is required to get Parsec running on your computer and a Raspberry Pi. A fresh copy of Raspbian Stretch is a smart idea, written to your Raspberry Pi the easy way with Etcher (www.balena.io/ etcher). We used a Raspberry Pi 3B+, but any Raspberry Pi 2 or later should work fine. For the best results, an Ethernet cable is needed, along with a USB mouse and keyboard, HDMI cable and a suitable USB game controller. Your PC with the games installed on it should be connected to the same network that you plan to stream across.
Pi-sec
Installing Parsec on your gaming PC turns it into a game streaming server. It’s compatible with Ubuntu 18.04 LTS, Windows 7 and later (32-bit and 64-bit) and macos 10.9 and later, and you’ll find a version suitable for your OS at http://bit.ly/lxf251-parsecdl. While it downloads, take the time to visit the Parsec account creation page at http://bit.ly/lxf251-parsecsignup.
After installation (remember to agree to installing controller support), run Parsec and login with the account you created on the website. Click Enable Hosting, then ‘Add a computer’. In the next screen, choose ‘Add your own gaming computer’, then wait for the ID to be created. Click Play then Manage to see the ID code; make a note of this, as you’ll need it later.
Your computer is now connected to the Parsec network, awaiting the connection of a target device: your Raspberry Pi. With your Pi booted up, open a terminal (or connect via SSH) and update its sources and software.
sudo apt update sudo apt upgrade
Next, open the configuration tool:
sudo raspi-config
Here, open Advanced Options > Memory Split and set the value to 128. Use the arrow keys to select OK, then exit the configuration tool. Raspbian will prompt you to reboot, so select Yes to proceed.
With the Pi rebooted, use wget to download the DEB file parsec.rpi-deb:
cd ~ wget https://s3.amazonaws.com/parsec-build/package/ parsec-rpi.deb
This can take a while, so it’s worth taking this time to ensure the games you intend to play are up to date on your gaming PC. Waiting for an update when you’re attempting to try out streaming can prove frustrating!
After downloading the DEB file, install it with:
sudo dpkg -i parsec-rpi.deb
Parsec is now installed, but before running you will need to ensure the correct configuration. For this, you’ll need the keyboard and display connected to the Pi (rather than a remote SSH connection), with a terminal session running. Enter the parsec command and when prompted enter the username and password you created earlier on your gaming PC.
A Server List will appear, displaying your gaming PC by name. Input the corresponding number to connect to the server. In the event no server is listed use this command instead:
parsec SERVER_ID=
Substitute
Although Parsec delivers a game streaming experience with minimal lag, you may want to tweak your mouse settings slightly. This will speed up the mouse on the remote PC, useful for launching games or playing mouse-driven titles.
Open a terminal to edit cmdline.txt:
sudo nano /boot/cmdline.txt
Next, look for the line that starts:
dwc_otg.lpm_enable=0
Use the arrow keys to skip to the end of the line and add the following:
usbhid.mousepoll=8
Save and exit with Ctrl+x, then restart the Pi:
sudo reboot
Any mouse lag issues should now be resolved.
Tweak away
As noted, an Ethernet cable connection is recommended for this project, both for the gaming PC and the Raspberry Pi, via your router. If this isn’t possible, at least one of the computers should be connected via Ethernet, and the other over Wi-fi. Relying on Wi-fi for both devices isn’t recommended unless they’re both in the same room and your router has a 5GHZ band.
Failure to do this will result in a gaming experience that isn’t worth the bother. Slow, stuttery gameplay is a waste of time, which is why ensuring Parsec is customised for the best performance can help considerably, so we’ll do that now.
On your gaming PC, open the Parsec server app and take the time to check out the options in the Client settings. Find the Settings cog to access this, then click Client. You’ll see options for Vsync (default: On) and whether you should use Windowed Mode. Fullscreen is the norm here, but there might be scenarios in which Windowed works better.
There’s also the option to switch your renderer; Opengl is an option, although Windows gaming PCS will almost certainly run better with Directx. Meanwhile, the Accelerated Decoder Mode is a default option that you should leave alone. Further settings can be tweaked in Hosting. Here, you can set local hosting options, but there is also the option to Enable Hosting for multiplayer gaming (see box, below).
Under Basic Settings, you’ll see a Bandwidth Limit. The default is based on your network speed, but you can spend some time finding the right option for this once you have settled upon locations for your gaming PC and Raspberry Pi. If they’re likely to move around the house – perhaps because your gaming PC is a laptop – then leaving this set to the default is wise.
Resolution, meanwhile, defaults to Autodetect, but several options are available. In most cases, it probably doesn’t need to be set to 4K unless you’re hardcore about gaming. You’ll need the best Ethernet cables available to get the best results from this – not to mention a suitably powerful PC.
In the same screen, you can set Approved Apps for remote connections during multiplayer, although you might be more interested in Advanced Settings. Here, set H.265 to Off, and set Display Adaptor to use your PC’S video card. All you need to do now is launch any game on your PC (from Steam or elsewhere) and start playing via your Raspberry Pi.