OBS Studio (Open Broadcaster Software) captures, mixes, and encodes video and audio for streaming or local recording. Common use cases include streaming games to Twitch or YouTube, producing multi-source tutorial screencasts, and assembling scene-based video podcast layouts. By the end of this guide, you will install OBS Studio on Fedora using either the native DNF package or the official Flatpak build and verify that recording and streaming work as expected.
Upstream officially supports Flatpak builds on Linux and recommends Flatpak for non-Ubuntu distributions. The Fedora community maintains the obs-studio package in official repositories. Flatpak offers sandboxing, a faster release cadence, and consistent plugin/runtime behavior, while the DNF package integrates natively with the system, shares host libraries, and suits users who prefer traditional package management. You can check the latest release on the OBS Studio GitHub releases page.
Choose an Installation Method
Select one installation path that matches your update expectations and integration needs. Do not mix DNF and Flatpak instructions.
| Method | Channel | Stability | Best For | Notes |
|---|---|---|---|---|
| DNF (Fedora) | Fedora official repositories | Distro-tested | Fedora users who prefer native packages | Package exists in Fedora; integrates with system libraries |
| DNF (RPM Fusion) | RPM Fusion Free/Nonfree | Third-party | Users needing extras (e.g., some plugins/codecs) | May introduce dependency changes; review carefully to avoid downgrades |
| Flatpak (Official) | Flathub | Upstream rapid updates | Most users; sandboxing; consistent plugin/runtime behavior | OBS upstream recommends this for non-Ubuntu distros |
Recommendation: Prefer the Flatpak build unless you specifically require native system-library integration. If you choose RPMs, favor the Fedora repository build first. Use RPM Fusion only when you need features not present in Fedora’s package, and preview transaction changes to avoid downgrades or replacements.
Install OBS Studio via DNF
Update Fedora System
Refresh packages first to minimize dependency conflicts:
sudo dnf upgrade --refresh
Install OBS Studio (DNF)
Next, install the community Fedora package:
sudo dnf install obs-studio
After installation completes, confirm OBS runs correctly:
obs --version
At this point, the expected output (version varies) resembles:
OBS Studio - 32.0.4 (linux)
Version numbers change frequently; any current stable number indicates success. Focus on absence of errors rather than matching the example exactly.
Install Development Files (Optional)
Plugin authors or developers compiling custom modules can install headers and CMake configuration files. These allow building and linking third-party OBS plugins cleanly:
sudo dnf install obs-studio-devel
After installation, inspect a few installed paths (truncated example):
rpm -ql obs-studio-devel | head -n 10
/usr/include/obs /usr/include/obs/callback /usr/include/obs/callback/calldata.h /usr/include/obs/graphics /usr/include/obs/graphics/axisang.h /usr/include/obs/obs.h /usr/include/obs/obs-module.h /usr/lib64/cmake/LibObs /usr/lib64/cmake/LibObs/LibObsConfig.cmake /usr/lib64/cmake/LibObs/LibObsTargets.cmake
Enable Virtual Camera Support (Optional)
To enable virtual camera support, you need the v4l2loopback kernel module, which is available from RPM Fusion. First, enable the RPM Fusion repositories, then install the module:
sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install kmod-v4l2loopback
The
$(rpm -E %fedora)expression expands to your current Fedora release number (such as 43). This ensures the command works across Fedora versions without manual URL edits. For systems with frequent kernel updates, considerakmod-v4l2loopbackinstead, which automatically rebuilds the module when new kernels are installed.
After installation, confirm the module loaded (OBS can auto-load it on first virtual camera use):
lsmod | grep v4l2loopback || echo "Module not loaded yet"
Expected output example (presence indicates success):
v4l2loopback 16384 0
If the module does not load automatically, load it manually with the following command:
sudo modprobe v4l2loopback exclusive_caps=1 card_label='OBS Virtual Camera'
For more repository management details, see the RPM Fusion guide for Fedora. If SELinux interferes with capture or encoding, review SELinux guidance for Fedora and prefer creating policy exceptions rather than disabling SELinux entirely.
Enable Hardware Encoding (Optional)
Hardware encoders reduce CPU load. Install the correct drivers first (NVIDIA proprietary driver for NVENC; Mesa VAAPI for Intel/AMD). After you enable RPM Fusion, NVENC libraries become available with the driver packages. If you plan to use NVENC, install the proprietary drivers: see the NVIDIA drivers guide for Fedora.
Install VAAPI utilities and drivers if missing, then confirm capabilities:
sudo dnf install libva-utils mesa-va-drivers
vainfo | grep -i h264 || echo "VAAPI not detected: check drivers/packages"
For reference, a healthy output includes lines similar to:
VAProfileH264High : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointVLD
After installing drivers, restart OBS and confirm OBS detects the hardware encoders. Open OBS, navigate to Settings → Output → Encoder dropdown. Successful detection shows options like H.264 (NVENC), H.264 (VAAPI), or FFmpeg VAAPI variants. If only software encoders (x264) appear, confirm driver installation completed and restart your system so the kernel modules load properly.
Install OBS Studio via Flatpak
OBS upstream supports and recommends the Flatpak build. Fedora Workstation includes Flatpak by default; if you removed it or you run a minimal install, reinstall with sudo dnf install flatpak then enable Flathub below.
Enable Flathub Repository
To begin, enable Flathub to access Flatpak applications:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Install OBS Studio (Flatpak)
Next, install the application:
flatpak install flathub com.obsproject.Studio
After installation completes, confirm OBS installed correctly and check its version:
flatpak info com.obsproject.Studio | grep -E "Version|Runtime"
Version: 32.0.4
Runtime: org.kde.Platform/x86_64/6.8
The version number confirms successful installation. The runtime indicates which KDE platform libraries OBS uses for its interface.
Flathub Repository Access Issues
If you encounter an error indicating Flathub is disabled, you’ll see output similar to:
error: Unable to load summary from remote flathub: Can't fetch summary from disabled remote 'flathub'
In that case, enable the Flathub repository:
flatpak remote-modify --enable flathub
After re-enabling, confirm the repository appears:
flatpak remotes
At this point, you should see Flathub listed. Afterwards, retry the install if needed.
Troubleshoot Common Issues
Wayland Screen Capture Blank
Fedora 43 and later use Wayland exclusively for GNOME (Fedora removed the X11 session). Always use the Screen Capture (PipeWire) source for Wayland sessions. The legacy Xcomposite and Display Capture sources do not work on Wayland and show a black preview.
If the preview stays black even with the correct source, first verify PipeWire is running:
systemctl --user status pipewire
Expected output shows active status:
● pipewire.service - PipeWire Multimedia Service
Active: active (running)
If inactive or missing, install the portal packages:
sudo dnf install xdg-desktop-portal xdg-desktop-portal-gnome
Then restart the session and relaunch OBS.
If capture fails unexpectedly on Fedora, check for SELinux denials and suggested fixes:
journalctl -t setroubleshoot | tail -n 50 || echo "No recent SELinux alerts"
sealert -a /var/log/audit/audit.log || echo "sealert not available"
Missing Audio Sources
If OBS shows no audio devices in the mixer, confirm the system detects PipeWire or PulseAudio sources:
pactl list short sources
Healthy output lists available audio sources:
0 alsa_input.pci-0000_00_1f.3.analog-stereo 1 alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
If the list appears empty or you notice missing devices, restart the audio session:
systemctl --user restart pipewire pipewire-pulse
Then relaunch OBS and verify audio meters respond when you speak or play sound.
Virtual Camera Not Appearing
If the “Start Virtual Camera” button does not appear in OBS Controls, confirm the kernel module loaded:
lsmod | grep v4l2loopback
If the command returns no output, the module did not load. Load it manually:
sudo modprobe v4l2loopback exclusive_caps=1 card_label='OBS Virtual Camera'
Then restart OBS and confirm “Start Virtual Camera” appears under Controls. If the module still does not load, verify you installed kmod-v4l2loopback (see virtual camera section above).
Flatpak File Access
If OBS cannot see expected folders, cautiously grant overrides:
flatpak override --user --filesystem=$HOME/Videos com.obsproject.Studio
Inspect permissions and remove overrides if unnecessary:
flatpak permission-show com.obsproject.Studio
flatpak override --user --reset com.obsproject.Studio
Launch OBS Studio
For everyday use, launch from the terminal or applications menu.
Launch from Terminal
obs
Alternatively, use the Flatpak identifier:
flatpak run com.obsproject.Studio
Launch from Applications Menu
Open Activities and search for “OBS Studio,” then click the icon to launch. Alternatively, open the full application grid and locate OBS Studio in the list.


During the initial run, a configuration wizard can auto-tune settings; alternatively, skip and adjust manually. Scenes (left) group layouts while sources (center) add screen captures, cameras, and audio inputs.
First-Run Checklist (Quick Verification)
- Add a Scene and a Source: use Screen Capture (PipeWire) for Wayland (the default on Fedora 43+).
- Start a short recording and confirm OBS saves a file to your Output path.
- Check audio meters move for your microphone and desktop audio; adjust monitoring/output as needed.
Manage OBS Studio
Use the package manager matching your installation method to keep OBS Studio current.
Update via DNF
To stay current, update all system packages (includes OBS Studio):
sudo dnf upgrade --refresh
Alternatively, update only OBS Studio:
sudo dnf upgrade obs-studio
Afterward, verify the version:
obs --version
OBS Studio - 32.0.4 (linux)
Update via Flatpak
Likewise, update all Flatpak applications (includes OBS Studio):
flatpak update
Alternatively, update only OBS Studio:
flatpak update --app com.obsproject.Studio
Afterward, verify Flatpak version info:
flatpak info com.obsproject.Studio | grep Version
To uninstall OBS Studio, use the package manager matching your installation method.
Remove via DNF
sudo dnf remove obs-studio
After removing the package, optionally clean residual dependencies:
sudo dnf autoremove
Then confirm removal succeeded (this command returns an error if OBS no longer exists):
obs --version || echo "OBS removed"
bash: obs: command not found OBS removed
Afterward, optionally remove user configuration:
These deletions permanently remove profiles, scene collections, custom docks, and cached data. Export scene collections and profiles first (Profile → Export; Scene Collection → Export). This command does not remove recordings stored outside the default output directory (e.g., custom paths in Settings → Output).
rm -rf ~/.config/obs-studio
rm -rf ~/.cache/obs-studio
Remove via Flatpak
flatpak remove --delete-data com.obsproject.Studio
Then, verify removal:
flatpak info com.obsproject.Studio || echo "Flatpak removed"
error: com.obsproject.Studio not installed Flatpak removed
By default, the --delete-data flag removes settings under ~/.var/app/com.obsproject.Studio/. Omit it to preserve configuration for future reinstallation.
Conclusion
In summary, you installed and verified OBS Studio on Fedora (DNF or Flatpak), enabled optional virtual camera and hardware encoders, and learned update and removal flows. Next, configure scenes, test audio levels, and install FFmpeg for video transcoding, VLC for media playback, or HandBrake for video compression to extend your recording and transcoding workflows.