Introduction
Low-latency desktop and game streaming from a Linux or Windows host to any of your devices.
Punktfunk streams your desktop or games to your other devices — a laptop, a Mac, a tablet, a TV — at low latency and at each device's own resolution and refresh rate. Run the host on a Linux machine or a Windows PC, connect a client, and you're streaming.
It's built for the things that make streaming feel native:
- Your device's exact mode. The host spins up a virtual display sized to the client that's connecting — 1080p60 to your laptop, 1440p120 to your desktop, 4K to your TV — at the same time. No letterboxing, no scaling, no juggling your real monitors. On Windows that's Punktfunk's own indirect display driver, frames pushed straight in — so there's no physical monitor or dummy HDMI plug to deal with, even on the secure desktop.
- Low latency, GPU end to end. Frames go straight from the compositor to the GPU encoder — NVENC on NVIDIA, Vulkan Video or VAAPI on AMD and Intel on Linux, AMF or QSV on Windows — with no CPU copies on the paths where that's been validated (the support matrix says which), and over a transport tuned for responsiveness rather than throughput.
- Works with the apps you already have. Punktfunk also speaks the GameStream protocol, so with
--gamestreamany Moonlight client connects — alongside a faster native protocol with dedicated apps for macOS, iOS, tvOS, Linux, Windows, and Android. - Secure by default. Hosts require a one-time PIN pairing; after that, devices reconnect on a pinned identity. No accounts, no cloud.
Pick your path
New here? Start with the Quick Start — it takes you from nothing to a stream and links out to the detail as you need it. The rest of these are for when you want depth.
Quick Start
From nothing to streaming: set up a host and connect your first client.
How It Works
The ideas behind Punktfunk in a few minutes — virtual displays, the two protocols, pairing.
Support Matrix
What works where — every host desktop, GPU and client app, each cell read out of the code that decides it.
Install the Host
One page per system — Ubuntu, Debian, Fedora, Arch, Bazzite, SteamOS, NixOS, or Windows — with the install command and nothing else.
Switching from Sunshine
Run Punktfunk next to Sunshine, Apollo or Vibeshine while you try it, then migrate — what maps to what.
Connect a Client
Stream with the native app for your device — macOS, Linux, Windows, Android — or any Moonlight client.
Your Game Library
The host finds your installed games by itself — browse a paired host and launch a title straight into the stream.
API Reference
Interactive OpenAPI reference for the host's management REST API — status, devices, pairing, library.
What you need
- A host with an NVIDIA, AMD, or Intel GPU (there's a software encoder to fall back on without one) — either a Linux machine running one of the supported setups (Ubuntu, Debian, Fedora, Arch, Bazzite, or SteamOS), or a Windows PC. What each combination can actually do — codecs, HDR, 4:4:4, cursor, input — is in the Support matrix.
- A client device to stream to — there are native apps for macOS, iOS/iPadOS, tvOS, Linux, Windows, and Android, plus any device that runs Moonlight.
- Both on the same network (LAN or VPN). Punktfunk is designed for a trusted local network.
Ready? Head to the Quick Start.
Community
Questions, help, or want to try the Android beta? Join the Discord — request a tester invite there — or r/Punktfunk on Reddit.