The story of how I discovered streaming games and what came out of it with step-by-step instructions.
Dedicated to anyone who is interested in the effective use of available hardware.
Introduction
It so happened that my wife presented me with a "prefix" to the TV in the form of a powerful gaming PC. The PC was successfully connected to the TV and until recently brought a lot of pleasant minutes of the game on the big screen.
But, first of all, not all games are comfortable to play on TV, I also find it much more convenient to play the same shooters and RTS sitting at the table.
Secondly, the only way out of the gaming PC, the TV, broke down very “successfully”.
Thirdly, my time-tested working PC (laptop) has long ceased to be a top one, and by no means all games even tolerably run on it, and changing it just because they can't play is no reason at all.
Fourthly, sometimes there is an overwhelming desire to play from work, and there are far from all the ports open (yes, even for myself at work I closed almost all ports) ...
')
The task was set: to provide access to the resources of the gaming PC from other computers, including remote.
Solution Review
As solutions was considered software that uses hardware video encoding using a video card.
From the available and free solutions for today, I found only streaming through Steam and a relatively affordable solution - embedded in the Nvidia
GeForce Experience - streaming for the Shield console.
What is not arranged streaming via Steam is the need (at this stage) to have computers in one broadcast network, which does not allow working with a remote PC through a routed network. Even raising the L2TP tunnel did not fix the situation - Steam clients do not see each other. There was also a problem with sound when streaming via Steam: if there are no active sound devices in the system (for example, I have only one audio output - HDMI, and if it is not connected, then there is no output), then some games either do not start (Skyrim) or go without sound. Nvidia has no such problem.
A big plus of Steam streaming is the work out of the box. With the decision of the GeForce Experience, I had to tinker a bit - it is intended only for the Shield console ...
Restore justice
On the Internet, an interesting
LimeLight project was found that adds Shield functionality to any Android device, but more importantly, it implements streaming on Windows, Linux and MacOS X. And even Raspberri Pi.
Broadcasting is supported with a resolution: 1280x720 (30 or 60 frames) and 1920x1080 (30 or 60 frames). Management is supported both with the help of a keyboard / mouse, and with the help of a controller connected to the client computer (the ability to stream to a weak PC connected to the TV and play using the controller).
In the latest version of the GeForce Experience, the ability to add alternative (without the declared support for streaming for Shield) games was added, but so far the display of the list of games is not implemented in LimeLight. Therefore, Steam - our everything, by default at startup - Big-Picture Steam is launched and already in it you can choose any available game or program.
Go to practice
System requirements:
- you need to have a series card of at least 600, the 700M, 800M and some 600M mobile lines are also supported;
- On the client computer (on which we will actually play), Java must be installed (I will not say anything on the version, it works on both 6 and 7), there are no strict requirements to have an Nvidia video card on the client;
- on the host computer (on which the game will actually run) must be installed Steam;
- on the host computer, it is desirable to disable UAC, since There may be problems running some games (usually multiplayer);
- the client OS (Windows 7, 8) must be installed on the host computer; it could not be started on the server OS due to the internal features of the server OS;
- if all work is done remotely, it is necessary to enable auto-login on the host computer.
Step 1. Go to
limelight-stream.com , select the platform you need if it is a PC -
github.com/limelight-stream/limelight-pc/releases and download the package for the OS you need. The choice of win64 or win32 (or lin32, lin64) depends on which version of java will be used.
Step 2. Create a shortcut: “Path \ to \ Java \ java.exe –jar“ Path \ to \ limelight-win64.jar ””, for example, “C: \ Program Files \ Java \ jre6 \ bin \ java.exe” -jar C: \ Users \ User \ Desktop \ limelight-win64.jar

Step 3. Run the utility with the created shortcut.

Step 4. From the client computer and the host computer (on which the games will be launched) you need to make a pair of host controller. To do this, you must specify the IP address of the host and click the Pair button. After that, a message appears on the host computer stating that the new Shield device wants to connect.
The button must be pressed on the host, in the active user session. I tried to connect via RDP to this user session - the message was not shown there, the mention of Nvidia Shield in the GeForce Experience snap-in also disappeared. Therefore, you can use any Remote Administrator, TeamViewer, Ammyy Admin, etc. products, if there is no physical access to the host console (for example, from work).
On the host, press the green button "Connect" (Connect):

On the client:

Actually that's all. Now you can click the “Start Streaming” button and connect to the gaming computer. Unfortunately, after each reboot of the host computer, you have to restore the connection.
Develop the theme
How to run, for example, tanks that are not on Steam. Launch Steam and add a new game. I imported IPTV Player in the same way on Steam in order to get a single entry point for my “media center” to watch IPTV.


Next, click “Browse” (Browse) and select the file that launches the game, namely the game, not the downloader, etc., in the tank catalog, this is WorldOfTanks.exe for tanks, this is important because via WOTLauncher.exe does not start.

And add to the library.
Conclusion
After the above actions, the streaming should earn and you can safely play in the tanks. It works perfectly on the local network (1 Gbit / s) at 1920x1080x60Hz, remotely through VPN L2TP you can play at 1280x720x30Hz.
What we have as a result:
- powerful media center connected to the TV with the ability to play on the big screen in any kind of slashers (or vice versa a weak media center and streaming from a powerful PC to the TV);
- independence from other family members - if you want to play - it is not necessary to occupy the TV;
- use of old iron, you can play on everything that can draw 1280x720;
- you can play some games on TV, others on a PC at the table, you can do it on any tablet, if the management allows it;
- sharing of resources between family members - everyone can play on their PC using the power of a family gaming station; everyone does not need to buy top hardware.
Unfortunately I can not say anything about the version for Android, because there is only a tablet on it. It would be interesting - streaming to android set-top box. If someone has the opportunity to check - I will be grateful.
I hope the article was interesting and / or useful, thanks for your time!
Detected "features"
1. The games Left 4 Dead 2, Portal 2, possibly other Valve manufactures, do not work with other manufacturers, there are no problems. What does not work in the streaming through the GeForce Experience, and in the native Steam.
2. The utility tries to set the resolution value as close as possible to the selected broadcast format (for example, 1280x720 broadcast is selected). But on some monitors (with an aspect ratio different from 16: 9) there may be problems in the form of a wide black frame. It is solved by scaling to the most appropriate resolution through the control panel.

3. Sometimes knocks out Steam, after that only a reboot helps.
Links
1.
LimeLight2.
GeForce Experience3.
Java download