OBS Studio

From Gentoo Wiki
(Redirected from OBS)
Jump to:navigation Jump to:search
This page contains changes which are not marked for translation.

OBS Studio is free software for video recording and live streaming.

Built with Qt, C and C++ and maintained by the OBS Project, the software provides real-time device capture, scene composition, recording, broadcasting and source capture functions with presets for streaming to popular services such as YouTube, Twitch, Instagram and Facebook[1].

In 2014, development started on a rewrite of the software, known as OBS Multiplatform, which included a larger feature set, multi-platform support and broader plugin support[2]. As of 2016, the software was rebranded as OBS Studio, with the older OBS Classic being deprecated.[3]

Installation

USE flags

USE flags for media-video/obs-studio Software for Recording and Streaming Live Video Content

alsa Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
browser Enable browser source support via (precompiled) CEF.
decklink Build the Decklink plugin.
fdk Build with LibFDK AAC support.
jack Add support for the JACK Audio Connection Kit
lua Enable Lua scripting support
mpegts Enable native SRT/RIST mpegts output.
nvenc Add support for NVIDIA Encoder/Decoder (NVENC/NVDEC) API for hardware accelerated encoding and decoding on NVIDIA cards (requires x11-drivers/nvidia-drivers)
pipewire Build with PipeWire support.
pulseaudio Add sound server support via media-libs/libpulse (may be PulseAudio or PipeWire)
python Build with scripting support for Python 3.
qsv Build with Intel Quick Sync Video support.
qt6 Add support for the Qt 6 application and UI framework
speex Build with Speex noise suppression filter support.
ssl Build with TLS/SSL support for RTMPS connections.
test Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)
truetype Add support for FreeType and/or FreeType2 fonts
v4l Enable support for video4linux (using linux-headers or userspace libv4l libraries)
vlc Build with VLC media source support.
wayland Enable dev-libs/wayland backend
websocket Build with WebSocket API support.

For a standard streaming setup that uses a webcam, PulseAudio, has a NVIDIA graphics card and integrates with major streaming services one might add to /etc/portage/package.use :

FILE /etc/portage/package.use/obs-studio
media-video/obs-studio lua nvenc pulseaudio speex v4l

Emerge

Install media-video/obs-studio:

root #emerge --ask media-video/obs-studio

Additional software

Audio

OBS Studio can be paired with JACK, Pulseaudio or PipeWire for audio.

VLC

OBS Studio supports integration with VLC media player services. VLC support behaves much like the ordinary media source, however in addition it accepts a list of files to play as well as provides a way to play every path, URL or media source that VLC is able to play.

Usage

Invocation

OBS Studio can be invoked from the command line as follows:

user $obs --help
--help, -h: Get list of available commands.

--startstreaming: Automatically start streaming.
--startrecording: Automatically start recording.
--startreplaybuffer: Start replay buffer.
--startvirtualcam: Start virtual camera (if available).

--collection <string>: Use specific scene collection.
--profile <string>: Use specific profile.
--scene <string>: Start with specific scene.

--studio-mode: Enable studio mode.
--minimize-to-tray: Minimize to system tray.
--portable, -p: Use portable mode.
--multi, -m: Don't warn when launching multiple instances.

--verbose: Make log more verbose.
--always-on-top: Start in 'always on top' mode.

--unfiltered_log: Make log unfiltered.

--disable-updater: Disable built-in updater (Windows/Mac only)

--disable-high-dpi-scaling: Disable automatic high-DPI scaling

--version, -V: Get current version.

Removal

Unmerge

Remove media-video/obs-studio:

root #emerge --ask --depclean --verbose media-video/obs-studio

Troubleshooting

Wayland

If OBS Studio isn't able to record windows or the fullscreen on a Wayland compositor, set the appropriate USE flags and emerge gui-libs/xdg-desktop-portal-wlr.

Add the screencast USE flag for the dependency sys-apps/xdg-desktop-portal, and pipewire for media-video/obs-studio:

FILE /etc/portage/package.use
sys-apps/xdg-desktop-portal screencast
media-video/obs-studio pipewire

Emerge gui-libs/xdg-desktop-portal-wlr:

root #emerge --ask gui-libs/xdg-desktop-portal-wlr

Re-emerge media-video/obs-studio to apply the USE flag change:

root #emerge --ask media-video/obs-studio

Virtual camera

For virtual camera support within OBS Studio, emerge the v4l2loopback kernel module:

root #emerge --ask media-video/v4l2loopback

For OBS Studio to initialize the kernel module, give it the appropriate permissions, this can be done by running it as root or using a polkit agent.

External Resources

References