2061135

Stream mit Steam - So spielen Sie über Ihr Netzwerk

31.03.2015 | 12:33 Uhr |

Valve hat mit „In-Home- Streaming“ das Konzept der Terminal-Dienste auf Spiele übertragen: Die Spieleplattform Steam erlaubt es, die Spiele eines Rechners über das Netzwerk auf anderen Client-PCs zu spielen.

Das Spiele-Streaming von einem PC auf einen anderen ist ein wesentlicher Bestandteil der Strategie des Spieleherstellers Valve hinter Steam-Machines und Steam-OS . Diese Technik, die Valve „In-Home-Streaming“ nennt, funktioniert aber bereits seit einem Jahr allein mit der Spieleplattform Steam, die dabei zwei PCs nach dem Client-Server-Modell über das lokale Netzwerk verbindet.

Gerade zusammen mit schlanken Linux-Systemen zeigt sich in zwei Punkten der Nutzen dieser Streaming-Technik: Ein Windows-PC kann ein Spiel wie Bioshock 2 , das es für Linux nicht gibt, auf einen Linux-PC senden. Der zweite wichtige Aspekt ist die Rechenleistung, die nicht der Client liefern muss, sondern die vom Server-PC bereitgestellt wird.

Unser Themenkanal zu Gaming & Fun

Spielen per In-Home-Streaming

Beim In-Home-Streaming berechnet ein leistungsfähiger Windows-Rechner die Grafik des Spiels und erzeugt einen Stream für die Grafik und den Stereo-Sound, den dann auch ein weniger leistungsfähiger Client-Rechner empfangen, decodieren und ausgeben kann. An diesen Client sind Maus, Tastatur und ein Gamepad angeschlossen. Die Steuersignale gehen über das Netzwerk mit kaum spürbarer Latenz zurück an den Rechner, der das Spiel tatsächlich ausführt. Während also ein lauter Bolide in einem anderen Zimmer vor sich hin röhrt, spielen Sie das grafisch anspruchsvolle Spiel auf dem Sofa mit einem leisen Notebook – fast so, als liefe es nativ. Während der Server momentan zwingend ein Windows-System sein muss (Stand Januar 2015), können die Clients auch unter Linux oder Mac-OS X laufen und brauchen lediglich eine lokal installierte Version von Steam. In Zukunft, voraussichtlich wenn das auf Debian-Linux basierende Steam-OS fertig ist, sollen aber alle PCs, auf denen ein Steam-Client läuft, als Streaming-Server dienen können.

Kleiner Client: Auch ein Ultrabook mit einer integrierten GPU hat dank Hardware-Decoding genug Leistung, um Spiele in HD-Auflösung und mit 60 Bildern pro Sekunde als Stream anzuzeigen.
Vergrößern Kleiner Client: Auch ein Ultrabook mit einer integrierten GPU hat dank Hardware-Decoding genug Leistung, um Spiele in HD-Auflösung und mit 60 Bildern pro Sekunde als Stream anzuzeigen.

Anforderungen an Hardware und Software

Damit ein Spiel über Valves Streaming-Technik anständig läuft, müssen die Hardware-Ausstattung der beteiligten PCs und die Netzwerkleistung passen. Für In-Home-Streaming braucht der gewünschte Spieletitel nur auf dem Streaming-Server installiert sein, auf dem Client reicht Steam alleine aus. Der Server sollte ordentliche Rechenpower mit Quadcore-CPU liefern (oder besser) und natürlich eine spieletaugliche Grafikkarte von Nvidia oder AMD/ATI besitzen.

Neben der Berechnung der Spielgrafik in der gewünschten Auflösung kommt diesem PC noch die Aufgabe zuteil, Grafik und Sound per H.264-Codec in einen Stream zu verwandeln.

Bei High-End-Grafikkarten erledigt das die GPU, und der PC insgesamt verliert dabei kaum Leistung.

Auf der Client-Seite darf die Hardware hingegen recht bescheiden ausfallen, aber richtige Oldies kommen auch hier nicht in Betracht: Der Client-PC muss immerhin den empfangenen Stream in Echtzeit decodieren. Optimal ist es, wenn es auch hier einen Grafikchip mit Hardware-seitigem H.264-Decoder gibt, wobei dies auch der Hauptprozessor übernehmen kann, wenn dessen Leistung stimmt. Die Grafikauflösung kann gleich oder auch kleiner sein als jene auf dem Streaming-Server.

Eine Faustregel, die sich beim Testen verschiedener Notebooks ergeben hat: Ist das Gerät in der Lage, ein HD-Video (720p) ruckelfrei und ohne Aussetzer wiederzugeben, dann reicht die Leistung auch für die Darstellung des Spiele-Streams von Steam. Wenn der Empfänger über einen Hardware-beschleunigten H.264-Decoder verfügt, wie er beispielsweise in vielen Intel-CPUs mit integrierter Grafikeinheit oder in AMDs APUs vorhanden ist, muss der Hauptprozessor nur eine mittlere Last stemmen.

Kleiner Client: Auch ein Ultrabook mit einer integrierten GPU hat dank Hardware-Decoding genug Leistung, um Spiele in HD-Auflösung und mit 60 Bildern pro Sekunde als Stream anzuzeigen.
Vergrößern Kleiner Client: Auch ein Ultrabook mit einer integrierten GPU hat dank Hardware-Decoding genug Leistung, um Spiele in HD-Auflösung und mit 60 Bildern pro Sekunde als Stream anzuzeigen.

Anforderungen an das Netzwerk: Ethernet ist Pflicht

Ganz entscheidend für einen ruckelfreien Spielgenuss sind Bandbreite und Latenz der Netzwerkverbindung. Während hohe Auflösungen eine hohe Netzwerkbandbreite erfordern, etwa Ethernet mit 100 MBit/s, verlangen schnelle Reaktionszeiten eine möglichst niedrige Netzwerklatenz. Und die gibt es nur im kabelgebundenen Netzwerk. Prinzipiell arbeitet In-Home-Streaming auch mit WLAN, sofern dieses nach dem Standard 802.11n oder 802.11ac eine hohe Bandbreite liefert. Um genügend Reserven für eine Übertragung in HD-Auflösung und 60 Bildern pro Sekunde zu haben, empfiehlt Valve mindestens eine WLAN-Verbindung mit 802.11 N. Für das beste Ergebnis sollten Sie aber ein Fünf-GHz-Netzwerk oder gleich ein Wireless-AC-Netzwerk verwenden.

Bei vielen Spieletiteln sind die Verzögerungen im WLAN aber trotzdem zu hoch und die Steuersignale brauchen für den Weg zurück zum Streaming-Server einige Millisekunden zu lange. Selbst in einem optimalen Szenario mit kabelgebundenem Gigabit-Ethernet ergibt sich immer noch eine leichte Anzeigeverzögerung von 20 bis 30 Millisekunden. Das klingt tolerabel, aber solche Verzögerungen sind bei schnellen Ego-Shootern durchaus spürbar und können stören. Bei eher strategischen Spielen, bei welchen es auf extrem schnelle Reaktionszeiten nicht ankommt (Rollenspiele, Strategie- und Aufbauspiele) bleibt die gefühlte Beeinträchtigung über Ethernet minimal und fällt nicht ins Gewicht.

Steam installieren: Die Prozedur ist unter Ubuntu und Abkömmlingen wie Linux Mint unproblematisch. Bei anderen Distributionen kann die Einrichtung zum Abenteuer geraten.
Vergrößern Steam installieren: Die Prozedur ist unter Ubuntu und Abkömmlingen wie Linux Mint unproblematisch. Bei anderen Distributionen kann die Einrichtung zum Abenteuer geraten.

Steam: Die Installation unter Linux

Im Dezember 2012 hatte Valve den Steam-Client für Linux als öffentliche Beta vorgestellt. Im Februar 2013 konnte Steam die Betaphase verlassen. Es handelt sich um proprietäre Software, die als ausführbare Binary zusammen mit zahlreichen Linux-Bibliotheken etwa für Open GL und Direct Rendering ausgeliefert wird. Da Steam auf allen Systemen gleich aussehen soll, merkt man der Software die Windows-Herkunft deutlich an, und die eigene Sammlung an Systembibliotheken widerspricht den Paket-Richtlinien der meisten Distributionen. Genau diese Bibliotheken machen Steam auf einigen Distributionen zu einem schwierigen Patienten, denn die Bibliotheksversionen können Konflikte mit den vorhandenen Systembibliotheken verursachen. Offiziell unterstützt Valve deshalb nur Ubuntu ab Version 12.04 sowie das eigene, Debian-basierte, zukünftige Steam-OS. Auf der Webseite http://store.steampowered.com/about gibt es Steam nur als DEB-Paket. Allerdings bieten andere Distributionen ( Fedora , Open Suse und Arch Linux ) inoffizielle Pakete mit der Steam-Binary an. Für Fedora 21 findet sich Steam im externen Repository von RPM Fusion , für Open Suse 13.2 stellt der Build Service ein passendes Paket bereit; Arch-Anwender finden Steam in den offiziellen Repositories . Jenseits von Ubuntu bleibt Steam aber oft eine Bastelei, zumal es sich um eine 32-Bit- Anwendung handelt, die nicht ohne weiteres auf Linux-Systemen mit 64 Bit funktioniert.

Beim unterstützten Ubuntu und Linux Mint ist die Einrichtung hingegen einfach. Arbeitet ein Nvidia- oder AMD/ATI-Grafikchip im Rechner, ist es empfehlenswert, vorab die neuesten proprietären Treiber herunterzuladen. Sie finden diese unter Ubuntu und Co. unter „Software & Aktualisierungen > Zusätzliche Treiber“. Mit dem Paketmanager ist das Steam-Installationsprogramm dann mit

sudo apt-get install steam 

schnell eingerichtet. Danach startet der eigentliche Installationsprozess, der dann die eigentlichen Programmdaten über die Internetverbindung lädt. Ist die Installation abgeschlossen, können Sie den Client aufrufen und sich mit Ihrem Steam-Konto anmelden oder ein neues erstellen. Unter „Steam > Settings > Interface“ stellen Sie die Oberfläche nach Deutsch um.

Minimale Ruckler, maximaler Spaß - Die besten Gamer-Tools

Steam-Streaming: Zwei Rechner verbinden

Melden Sie sich auf dem Windows-PC, der als Streaming-Server die gewünschten Spiele in Steam installiert hat, und auf dem Linux-Rechner, der als Client dient, jeweils mit dem gleichen Steam-Account an. Auf beiden PCs öffnen Sie die „Einstellungen“ („Settings“). Hier schalten Sie unter „In-Home-Streaming > Erweiterte Hostoptionen“ beziehungsweise „Erweiterte Clientoptionen“ die Option „Hardwareencoding aktivieren“ ein. Dies aktiviert die Hardware-beschleunigte H.264-Codierung, sofern das Grafikchip und Treiber unterstützen. Die Steam-Instanzen finden sich im lokalen Netzwerk im gleichen Subnetz automatisch, und der Streaming-Client zeigt die Spiele-Bibliothek des Servers an. Das gewünschte Spiel starten Sie auf dem Client mit der Option „Stream“. Daraufhin wird das Spiel auch auf dem Server im Vollbildmodus gestartet. Das heißt: Für die Dauer der Spielesitzung ist der Server- PC für andere Tätigkeiten gesperrt. Außerdem werden alle Tasteneingaben und Mausbewegungen des Clients zurück an den Server übertragen, und das Spiel kann beginnen. Die Auflösung wird automatisch angepasst.

Anmeldung: Die Steam-ID dient im lokalen Netzwerk dazu, Server und Client per In-House-Streaming zu verbinden. Danach sieht der Client die Spiele-Bibliothek des Servers.
Vergrößern Anmeldung: Die Steam-ID dient im lokalen Netzwerk dazu, Server und Client per In-House-Streaming zu verbinden. Danach sieht der Client die Spiele-Bibliothek des Servers.

Einschränkungen und Problemlösungen

Zwei Steam-Instanzen kommunizieren im Netzwerk auf den Ports 27031 und 27036 (UDP) sowie über TCP auf den Ports 27036 und 27037.

Wenn eine Firewall auf dem Windows- PC oder dem Linux-Client diese Ports blockiert, kann Steam keine Verbindung aufbauen. Abhilfe schaffen hier nur Ausnahmeregeln für Paketfilter/ Firewall oder Abschalten der Firewall, denn eine Änderung dieser Ports erlaubt Steam nicht.

Spiele mit separatem Launcher starten nicht gleich, und der Client sieht zunächst nur einen schwarzen Bildschirm, weil Steam fälschlicherweise den Launcher und nicht das Spielefenster selbst erkennt. In diesem Fall muss man den Dialog auf dem Windows-Server erst wegklicken, bevor das Spiel läuft. Auch die Windows-Benutzerkontensteuerung bremst den Stream erst mal aus, bis auf dem Server-PC die Benutzereingabe erfolgt ist.

Jähes Ende unter Fedora 21: Abstürze des Clients liegt meist an inkompatiblen Systembibliotheken. Offiziell werden unter Linux nur Ubuntu und Abkömmlinge sowie Steam-OS unterstützt.
Vergrößern Jähes Ende unter Fedora 21: Abstürze des Clients liegt meist an inkompatiblen Systembibliotheken. Offiziell werden unter Linux nur Ubuntu und Abkömmlinge sowie Steam-OS unterstützt.

Sound kann Steam bisher nur in Stereo übertragen, ein 5.1-Setup wird nicht unterstützt, wobei aber die Konvertierung nach Stereo automatisch erfolgt. Sprachbefehle auf dem Client via Headset sind bisher auch noch nicht möglich. Bei den Eingabegeräten unterstützt In-Home-Streaming Tastatur, Maus und Gamepads, während spezielle Controller wie Lenkrad und Steuerknüppel noch außen vor bleiben.

Teilweise verhindert ein zu lange dauernder Spielstart auf dem Host-PC eine Streaming-Verbindung, da es zu einer Zeitüberschreitung kommt. Erneutes Starten des Spiels auf dem Empfänger mit dem Klick auf „Stream“ sollte nach einigen Versuchen zum Erfolg führen. Ernster ist die Fehlermeldung „The streaming client exited unexpectedly (2)“ auf dem Client, die meistens auf den gefürchteten Konflikt von Systembibliotheken mit Steam hinweist.

Hilfreich ist in diesem Fall immer ein Blick in die Logdatei „/tmp/streaming_ client.log“ auf dem Client, die oft in einer ausführlichen Fehlermeldung beschreibt, woran Steam gerade gestorben ist.

Wenn die Bandbreite nicht reicht oder die Verzögerung zu groß ist, dann aktivieren Sie auf dem Client unter Einstellungen > In-Home-Streaming > Erweiterte Clientoptionen“ den Punkt „Performanceinformationen einschalten“. Während des Streams können Sie dann mit der Taste F6 Status-Informationen einblenden und sehen die Netzwerkauslastung sowie die Verwendung des Hardware-Codecs für H.264. Eine Verbesserung bringt stets die Reduktion der Bildschirmauflösung in den Anzeigeoptionen des jeweiligen Spiels.

Zur Not können Sie unter „Erweiterte Clientoptionen“ auch die Bandbreite drosseln, um die Latenz zu verbessern, erhalten dann aber ein leicht verwaschenes Bild auf dem Client.

Da hängt etwas auf dem Server: Wenn ein Spiel auf dem Client-Rechner solche Dialoge anzeigt, muss man am Server-PC Hand anlegen, um die Stream-Bremse zu lösen.
Vergrößern Da hängt etwas auf dem Server: Wenn ein Spiel auf dem Client-Rechner solche Dialoge anzeigt, muss man am Server-PC Hand anlegen, um die Stream-Bremse zu lösen.
0 Kommentare zu diesem Artikel
2061135