Chapter 2 of 5
Capture without fighting Wayland
There is no "Game Capture" source on Linux, and the first hour of most people's Linux streaming career is spent looking for it.
It does not exist because it cannot: Windows game capture works by injecting a hook into the game's graphics calls, and nothing on Linux does that. What you get instead is a different model that is less magical and, once set up, more predictable.
First, know which session you are in
Almost every confusing capture problem comes down to X11 versus Wayland, and most people do not know which one they are running.
On most desktops, echo $XDG_SESSION_TYPE in a terminal answers it. The
difference matters:
- X11 is the older session. Any application can read any window, so OBS has window capture and display capture that simply work, the way you expect.
- Wayland is the modern one and is now the default on most distributions. Applications cannot read each other's windows by design — which is a real security improvement and the reason your capture behaves differently.
Neither is wrong. If you want the least friction today, an X11 session still gives you the most familiar behaviour. If you want the direction everything is moving, stay on Wayland and read the next section.
The portal, explained once
On Wayland, screen capture goes through a portal: OBS asks the desktop for permission, the desktop shows you a picker, and you choose what to share. The stream of frames then arrives over PipeWire — the same system that carries your audio.
Practical consequences:
- You will see a picker dialog the first time a source starts. Some desktops can remember the choice; some cannot, depending on versions.
- The source is "PipeWire Screen Capture" rather than a list of windows inside OBS. Choose the window or monitor in the dialog.
- A source can lose its target if the application restarts, because the thing it was pointed at no longer exists. Re-pick it. This is the single most common annoyance and it is not a bug in your setup.
If dialogs mid-stream are unacceptable to you, that is a legitimate reason to run an X11 session. Plenty of people do.
A layout that survives all of this
The scene structure from the general setup path applies here with one Linux twist: capture the monitor, not the window.
- Display capture is stable. It does not care whether a game restarted or changed resolution, and it never loses its target.
- Put the game on a dedicated display. If you have two monitors, the game gets one and your dashboard, chat and OBS get the other. You then capture the game's monitor and never touch the source again.
- If you only have one monitor, a second virtual output or simply capturing the whole display and accepting that alt-tabbing is visible is the honest trade. See the safety path for what that means for what you show.
Build the capture once, as its own scene, and use that scene as a source elsewhere. On Linux this matters more than on Windows, because re-picking a portal source in five scenes is five dialogs.
Flatpak, and why your source list looks wrong
OBS is commonly installed as a Flatpak, which is sandboxed. That is fine, and it has two consequences worth knowing up front:
- It sees what the portal lets it see. Which is the point.
- Plugins must be installed into the Flatpak, not into your system. A plugin dropped in a system directory will be invisible, and this confuses everyone exactly once.
The native package from your distribution avoids both, at the cost of updating on the distribution's schedule. Either is a reasonable choice; mixing them is not, so pick one and remove the other.
Games, browsers and the rest
- Proton games capture like any other window. If a game shows a black frame, it is usually a mismatch between the game's renderer and your session — try forcing it to run through XWayland, or the reverse.
- Gamescope can run a game in its own nested session with a fixed resolution, which makes capture completely predictable and is worth learning if one specific game misbehaves.
- Browser sources work normally, including your Gleem overlay. Nothing special required.
- Webcams are supported natively. If your camera needs an unusual format, a virtual camera tool can normalise it.
The test to run before you rely on it
Start OBS, start all your sources, then restart the game and look at your preview.
If everything is still live, your capture setup is robust. If a source went black, you now know which one is fragile — and switching it to display capture takes a minute now instead of a panic later.
Next: audio, which is the part Linux is unambiguously best at.