{"id":119746,"date":"2017-08-10T12:26:41","date_gmt":"2017-08-10T10:26:41","guid":{"rendered":"https:\/\/mygaming.co.za\/news\/?p=119746"},"modified":"2017-08-10T12:27:24","modified_gmt":"2017-08-10T10:27:24","slug":"setting-up-a-raspberry-pi-as-a-streaming-console","status":"publish","type":"post","link":"https:\/\/mygaming.co.za\/news\/pc\/119746-setting-up-a-raspberry-pi-as-a-streaming-console","title":{"rendered":"Setting up a Raspberry Pi as a streaming console"},"content":{"rendered":"<p>While the\u00a0<strong><a href=\"http:\/\/store.steampowered.com\/app\/353380\/Steam_Link\/\" target=\"_blank\" rel=\"noopener noreferrer\">Steam Link<\/a><\/strong>\u00a0is not officially available in South Africa, you shouldn\u2019t be prevented from playing PC games from the comfort of your couch.<\/p>\n<p>A good alternative is a Raspberry Pi running as a streaming console connected to a TV and your PC.<\/p>\n<p>Unlike a Steam Link, the system uses Nvidia\u2019s GameStream technology to stream games from a PC to a device over a local network.<\/p>\n<p>In this configuration, the Raspberry Pi essentially functions as a gaming console \u2013 allowing you to connect controllers to the Pi\u2019s USB ports and run preconfigured games from the Pi\u2019s interface.<\/p>\n<h3 class=\"my-4\">Hardware<\/h3>\n<p>The hardware required for the build is a Raspberry Pi with a power supply, SD card, and case (optional, as it will be in a high-use area).\u00a0A Raspberry Pi 3 Model B starter kit with what you\u2019ll need costs around\u00a0<a href=\"https:\/\/www.pishop.co.za\/store\/custom-kits\/raspberry-pi-3-kit-boxed\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>R940<\/strong><\/a>.<\/p>\n<p>The pricing for the individual components is:<\/p>\n<ul>\n<li>Raspberry Pi 3 Model B \u2013\u00a0<a href=\"https:\/\/www.pishop.co.za\/store\/raspberry-pi-boards\/raspberry-pi-3---model-b\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>R610<\/strong><\/a><\/li>\n<li>8GB MicroSD card \u2013\u00a0<a href=\"https:\/\/www.pishop.co.za\/store\/sd-cards\/sandisk-ultra-microsdhc-class-10-uhs-i-8gb---adapter\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>R99<\/strong><\/a><\/li>\n<li>Raspberry Pi power supply \u2013\u00a0<a href=\"https:\/\/www.pishop.co.za\/store\/rpi-power\/power-supply-eu-plug-51v-25a-pi-b-23-with-switch\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>R109<\/strong><\/a><\/li>\n<li>Raspberry Pi case \u2013\u00a0<a href=\"https:\/\/www.pishop.co.za\/store\/raspberry-pi-cases\/official-raspberry-pi-3-red\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>R130<\/strong><\/a><\/li>\n<\/ul>\n<p>You will also need a relatively-new Nvidia graphics card in your PC to use GameStream \u2013 a GeForce 600 Series or newer for desktop or GTX660M or newer chip for a notebook.<\/p>\n<p>My work laptop \u2013 an Asus ROG G752VT \u2013 sports an Nvidia GeForce GTX 970M, which was perfect.<\/p>\n<p>If you plan on using a Raspberry Pi as a streaming console for long stints, it is also a good idea to get a small heatsink for the board\u2019s processor.<\/p>\n<p><a href=\"http:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2361.jpg\" data-slb-active=\"1\" data-slb-asset=\"115257316\" data-slb-internal=\"0\" data-slb-group=\"slb\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-213412\" src=\"http:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2361-640x427.jpg\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" srcset=\"https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2361-640x427.jpg 640w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2361-600x400.jpg 600w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2361-768x512.jpg 768w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2361.jpg 1024w\" alt=\"Raspberry Pi hardware\" width=\"640\" height=\"427\" \/><\/a><\/p>\n<h3 class=\"my-4\">Setup<\/h3>\n<p>The setup consists of installing Nvidia\u2019s GeForce Experience tool on the PC you will use to run the games.<\/p>\n<p>After installing the software, I was able to check my notebook graphics card\u2019s compatibility with Nvidia\u2019s GameStream technology.<\/p>\n<p>I then enabled GameStream on my notebook, making sure to add apps to the software\u2019s settings to stream them to the Pi.<\/p>\n<p>After setting up the notebook for streaming, I used it to install\u00a0<strong><a href=\"https:\/\/www.raspberrypi.org\/downloads\/noobs\/\" target=\"_blank\" rel=\"noopener noreferrer\">NOOBS<\/a>\u00a0<\/strong>on\u00a0an SD card, which I connected to the Raspberry Pi\u00a0board.<\/p>\n<p>I then installed the Raspbian Jessie operating system and set up Bluetooth peripheral devices for easier accessibility while setting up Moonlight.<\/p>\n<p><a href=\"http:\/\/moonlight-stream.com\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Moonlight<\/strong><\/a>\u00a0is open source software which works with GameStream and allows you to stream gameplay to a variety of devices.<\/p>\n<p>The software also allows the client device to send control inputs to the host by default.<\/p>\n<p>Installing the software and its dependencies only required starting up the Pi\u2019s Terminal and entering a few commands.<\/p>\n<p>To begin, I made sure my system was updated using the \u201csudo apt-get update\u201d command, and then installed the required dependencies with the following command:<\/p>\n<blockquote><p>sudo apt-get install libopus0 libexpat1 libasound2 libudev0 libavahi-client3 libcurl3 libevdev2 libenet7 libraspberrypi0<\/p><\/blockquote>\n<p>After the dependencies had finished installing, I could install Moonlight.<\/p>\n<p>I opened up the sources.list file in the Pi\u2019s nano text editor with this command:<\/p>\n<blockquote><p>sudo nano \/etc\/apt\/sources.list<\/p><\/blockquote>\n<p>In the nano text editor, I navigated to the end of the document and added the following line before saving and exiting.<\/p>\n<blockquote><p>deb http:\/\/archive.itimmer.nl\/raspbian\/moonlight jessie main<\/p><\/blockquote>\n<p>Now all that remained was to fetch and install the GPG key using these commands:<\/p>\n<blockquote><p>wget http:\/\/archive.itimmer.nl\/itimmer.gpg<\/p>\n<p>sudo apt-key add itimmer.gpg<\/p><\/blockquote>\n<p>And install the Moonlight package with:<\/p>\n<blockquote><p>apt-get update<br \/>\napt-get install moonlight-embedded<\/p><\/blockquote>\n<p>After installing Moonlight, I was able to pair with my notebook wirelessly using its local IP address.<\/p>\n<p>Running games using Moonlight can be done by entering commands in the terminal or executing custom scripts to access saved configurations.<\/p>\n<p>When starting a stream with Moonlight, you can specifiy various options in the command\u00a0line.<\/p>\n<p>Below is an example of a command entered into the Pi which executes The Witcher 3: Wild Hunt remotely on my laptop and streams it to the Pi at a resolution of 1080p and a framerate of 60fps.<\/p>\n<blockquote><p>moonlight stream -1080 -60fps -bitrate 10000 -app witcher3<\/p><\/blockquote>\n<p><a href=\"http:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2321.jpg\" data-slb-active=\"1\" data-slb-asset=\"1586140900\" data-slb-internal=\"0\" data-slb-group=\"slb\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-213394\" src=\"http:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2321-640x427.jpg\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" srcset=\"https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2321-640x427.jpg 640w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2321-600x400.jpg 600w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2321-768x512.jpg 768w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2321.jpg 1024w\" alt=\"Moonlight and Xboxdrv Setup\" width=\"640\" height=\"427\" \/><\/a><\/p>\n<h3 class=\"my-4\">Controller mapping<\/h3>\n<p>Some controllers work natively with the Raspberry Pi, but it is usually easier to install xboxdrv and map your controllers as you connect them.<\/p>\n<p>The software allows you to save configurations and connect multiple controllers, including wireless Xbox 360 controllers using a dongle.<\/p>\n<p>I installed xboxdrv from its\u00a0<strong><a href=\"https:\/\/github.com\/xboxdrv\/xboxdrv\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub page\u00a0<\/a><\/strong>and mapped the input of a connected controller before initialising a game using Moonlight.<\/p>\n<p>If a controller requires remapping before playing, it is possible to write mapping options to a script which runs on startup.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-213402\" src=\"http:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2337-640x427.jpg\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" srcset=\"https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2337-640x427.jpg 640w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2337-600x400.jpg 600w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2337-768x512.jpg 768w, https:\/\/mybroadband.co.za\/news\/wp-content\/uploads\/2017\/05\/IMG_2337.jpg 1024w\" alt=\"Wticher 3 streaming from Laptop\" width=\"640\" height=\"427\" \/><\/p>\n<h3 class=\"my-4\">Gaming<\/h3>\n<p>The lengthy setup is worth the wait.<\/p>\n<p>Using scripts and a decent local network connection, the Raspberry Pi works great as a streaming console \u2013 allowing me to connect a controller and start streams at the push of a button.<\/p>\n<p>Sound is automatically delivered to the TV via the HDMI cable, and the quality and latency of your stream will depend on the connection between the two devices.<\/p>\n<p>While a wired Ethernet connection is ideal, a Wi-Fi connection with no interference and good signal strength may suffice \u2013 depending on your bitrate settings.<\/p>\n<p>Tweaking the stream options to find the right compromise between responsiveness and visual quality was a delicate balancing act, but eventually resulted in a responsive, high-quality stream which didn\u2019t seem to push the Raspberry Pi beyond its limits.<\/p>\n<p>The best streaming experience over Wi-Fi was obtained by setting the stream to 30fps, as this increased responsiveness while delivering smooth gameplay.<\/p>\n<p>While a cheap gaming console may be the easiest solution for living room gaming, a little bit of work and a Raspberry Pi can deliver true PC gaming to your TV.<\/p>\n<p>If you have a wireless keyboard and mouse, you can also hook them up to your Pi to play strategy games or first-person shooters.<\/p>\n<p><em>This article first appeared on <strong><a href=\"https:\/\/mybroadband.co.za\/news\/gaming\/212998-i-turned-a-raspberry-pi-into-a-mini-console-for-pc-gaming.html\" target=\"_blank\" rel=\"noopener\">MyBroadband<\/a><\/strong> and is republished with permission.<\/em><\/p>\n<h4><strong>Now read:\u00a0<a href=\"https:\/\/mybroadband.co.za\/news\/hardware\/205658-five-cool-gadgets-you-can-build-using-a-raspberry-pi.html\" rel=\"bookmark\">Five cool gadgets you can build using a Raspberry Pi<\/a><\/strong><\/h4>\n","protected":false},"excerpt":{"rendered":"<p>While the\u00a0Steam Link\u00a0is not officially available in South Africa, you shouldn\u2019t be prevented from playing PC games from the comfort of your couch.<\/p>\n","protected":false},"author":232,"featured_media":93535,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_sma_x_autopost_status":"idle","_sma_x_autopost_error":"","_sma_x_post_id":"","_sma_facebook_post_id":"","_sma_instagram_post_id":"","_sma_x_attempts":0,"footnotes":""},"categories":[7,3],"tags":[24914,45,10000,15401],"class_list":["post-119746","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hardware","category-pc","tag-moonlight","tag-nvidia","tag-raspberry-pi","tag-streaming"],"_links":{"self":[{"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/posts\/119746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/users\/232"}],"replies":[{"embeddable":true,"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/comments?post=119746"}],"version-history":[{"count":0,"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/posts\/119746\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/media\/93535"}],"wp:attachment":[{"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/media?parent=119746"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/categories?post=119746"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mygaming.co.za\/news\/wp-json\/wp\/v2\/tags?post=119746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}