Game-Streaming, das GameStream entwachsen ist
Eigenes Protokoll, eigener Display-Treiber, ein gemeinsamer Rust-Kern – Linux-first und ab Tag eins Moonlight-kompatibel.
240fps
stabil bei 5120×1440 – client-nativ, gemessen
~1.3 ms
Capture bis Empfang, über zwei Maschinen im LAN
> 1 Gbps
jenseits der GameStream-Grenze – im kabelgebundenen LAN
8
native Client-Plattformen
0
Konten, Clouds oder Dummy-Stecker nötig
Was den Unterschied macht
Durchgängig selbst entwickelt
Vom Display, das der Host bereitstellt, bis zum Frame auf deinem Bildschirm – jede Schicht stammt von uns. Und das merkt man.
Ein eigenes Protokoll
Jenseits von GameStreams Obergrenze – by design
Jeder andere Self-Hosted-Streaming-Stack spricht noch GameStream – NVIDIAs aufgegebenes Protokoll, dessen Fehlerkorrektur nutzbares Video bei rund 1 Gbit/s deckelt. Punktfunk spricht es auch, sodass Moonlight- und Artemis-Clients ab Tag eins funktionieren. Doch die nativen Clients fahren punktfunk/1: eine QUIC-Steuerebene und eine verschlüsselte Datenebene mit GF(2¹⁶)-Vorwärtsfehlerkorrektur, die die 1-Gbit/s-Wand durchbricht, Auflösung und Bildrate mitten im Stream ohne Reconnect wechselt und deine Leitung ausmisst, damit die Bitrate der Realität entspricht statt einer Schätzung.
Linux-first
Der Streaming-Host, den Linux nie hatte
Auf KDE, GNOME, gamescope und Sway bittet der Host deinen Compositor um ein echtes virtuelles Display in exakt der Auflösung und Bildrate deines Geräts – die 1280×800 eines Handhelds, ein 4K-Fernseher, ein 5120×1440-Ultrawide – ohne Dummy-Stecker, ohne EDID-Hacks, auf Wunsch komplett headless. Mehrere Geräte können gleichzeitig streamen, jedes auf seinem eigenen Display. Und auf atomaren Distros wie Bazzite installiert sich der Host als systemd-Extension: kein Layering, kein Reboot. Linux ist keine Portierung von Punktfunk – hier wurde Punktfunk gebaut.
Keep-alive
Dein Spiel überlebt den Disconnect
Was nach einem Abbruch passiert, ist eine Policy, die du festlegst – kein Zufall. Der Host kann das virtuelle Display – und auf einem gamescope-Host das Spiel selbst – über einen Disconnect hinweg am Leben halten, für ein Zeitfenster oder für immer, sodass ein Reconnect dich direkt zurückbringt: keine Neuverhandlung, kein Desktop-Umbau. Ein-Klick-Presets decken echte Setups ab – Gaming-Rig, geteilter Desktop, Hot-Desk, Workstation –, mehrere Geräte können Monitore eines Desktops werden, und die Display-Skalierung jedes Clients bleibt über Reconnects erhalten.
Jede Schicht von uns
Ein Rust-Kern, von unserem Treiber bis zu deinem Bildschirm
Unter Windows liefert Punktfunk einen eigenen signierten, komplett in Rust geschriebenen Display-Treiber mit und schiebt fertige Frames direkt hinein – kein Screen-Scraping dazwischen, selbst auf dem Sperrbildschirm – plus eine kleine Vulkan-Schicht für HDR, wo GPU-Treiber nicht mitspielen. Ein gemeinsamer Rust-Kern trägt Protokoll, Fehlerkorrektur und Krypto im Host und in jedem Client, sodass ein Fix auf acht Plattformen gleichzeitig landet. Nichts ist aus dem Stack eines anderen geerbt.
Gemessen, nicht behauptet
Zahlen zum Nachprüfen – auf deiner eigenen Hardware
Jeder Client bringt ein gestuftes Stats-Overlay mit demselben Vokabular mit, und die Web-Konsole zeichnet die Host-Performance live auf. Latenz über zwei Maschinen hinweg wird um den Uhrenversatz korrigiert – ~1,3 ms von Capture bis Empfang im LAN sind eine Messung, kein Versprechen. Und alles bleibt deins: SPAKE2-PIN-Pairing, gepinnte Geräteidentitäten, verschlüsselte Streams – keine Konten, keine Cloud, und die alte GameStream-Ebene bleibt aus, bis du sie einschaltest.
Umsteigen
Kommst du von Sunshine oder Moonlight?
Punktfunk spricht NVIDIAs GameStream, sodass deine Moonlight- und Artemis-Clients ab dem ersten Tag funktionieren – doch darunter steckt ein neues Rust-Protokoll mit Displays, die Disconnects überleben, einem eigenen Windows-Display-Treiber und nativen Clients auf acht Plattformen. Steig in deinem Tempo um.
Und alles, was du erwartest
Native Clients überall
Echte native Apps pro Plattform – iPhone, iPad, Apple TV, macOS, Windows, Linux, Android und das Steam Deck – statt einer plattformübergreifenden Hülle.
10-Bit-HDR auf Windows-Hosts
Echtes 10-Bit-HDR auf Windows-Hosts, pro Client ausgehandelt – strahlende Glanzlichter und saubere Schatten statt einer ausgewaschenen Näherung.
4:4:4-Vollchroma
Ein optionaler Vollchroma-Modus hält kleine Schrift und feine UI-Linien gestochen scharf – für die Desktop-Arbeit zwischen den Spielen.
Ton, der sauber und synchron bleibt
Knisterfreies Stereo, synchron zum Bild über Geräte hinweg – und dein Mikrofon streamt zurück zum Host, für Voice-Chat und Push-to-Talk.
Umfassende DualSense-Unterstützung
Gyro, Touchpad, Motion, Rumble, Lightbar, Player-LEDs und adaptive Trigger – durchgängig weitergereicht.
Steam-Spielebibliothek
Deine installierten Steam-Spiele, automatisch aus lokalen Dateien erkannt – ohne API-Key – mit Artwork und startbereit.
Eingebauter Speedtest
Der Host sendet einen kurzen Schub Testdaten, sodass der Client deine Verbindung misst und eine passende Bitrate wählt.
Jeder GPU-Hersteller – oder gar keiner
Hardware-Encoding auf NVIDIA, AMD und Intel, plus ein Software-H.264-Fallback, wenn keine GPU da ist.
Multi-Monitor-Hosts
Immer der richtige Bildschirm – kein entwischender Cursor, keine schwarzen Balken.
Headless-Hosts
Betreibe einen Gaming-PC ganz ohne Monitor – das virtuelle Display springt ein.
Eine echte Web-Konsole
Host-Status, gekoppelte Geräte, PIN-Pairing, GPU-Auswahl, Display-Anordnung, Performance-Graphen und Live-Logs – aus jedem Browser.
Eine Konsolen-UI fürs Sofa
Eine Gamepad-gesteuerte Oberfläche in jedem Client – Host-Liste, Pairing, Einstellungen und Bildschirmtastatur. Ganz ohne Maus.
Aus dem Blog
PIN-Pairing, das sich nicht durchprobieren lässt: SPAKE2 fürs Game-Streaming
Eine vierstellige PIN klingt schwach — nur 10.000 Kombinationen. So koppelt punktfunk ein neues Gerät mit einer PIN, die du vom Sofa aus eintippst, und gibt einem Angreifer dennoch nur einen einzigen Online-Versuch und keine Offline-Wörterbuchattacke — dank eines PAKE, das die Zertifikate beider Geräte aneinander bindet.
Niedrige Latenz beim Game-Streaming, wenn das Spiel die GPU auslastet
Der schwierigste Fall für jeden Streaming-Host ist der wichtigste: ein forderndes Spiel, das die GPU bereits auslastet. Warum der Encoder am Ende wartet — und die zwei Hebel, die unsere Encode-Zeit von ~30 ms auf ~4 ms gebracht haben.
