How to Install OBS Studio on Fedora

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.

MethodChannelStabilityBest ForNotes
DNF (Fedora)Fedora official repositoriesDistro-testedFedora users who prefer native packagesPackage exists in Fedora; integrates with system libraries
DNF (RPM Fusion)RPM Fusion Free/NonfreeThird-partyUsers needing extras (e.g., some plugins/codecs)May introduce dependency changes; review carefully to avoid downgrades
Flatpak (Official)FlathubUpstream rapid updatesMost users; sandboxing; consistent plugin/runtime behaviorOBS 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, consider akmod-v4l2loopback instead, 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)

  1. Add a Scene and a Source: use Screen Capture (PipeWire) for Wayland (the default on Fedora 43+).
  2. Start a short recording and confirm OBS saves a file to your Output path.
  3. 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.

Leave a Comment