OBS-Studio-31.1.2

Introduction to OBS Studio

OBS Studio is a screen recorder that can be piped to various media containers and remote servers. It is geared towards streaming but also has a very much supported general recording usecase.

[Notat]

Notat

Dette kan ta litt tid å bygge. Gjør gjerne noe annet mens dette bygges.

Additional Downloads

OBS Studio Dependencies

Required

alsa-plugins, CMake, cURL, FFmpeg, FreeType2, Fontconfig, GLib2 (with GObject Introspection), Jansson, libdrm, libva, libxkbcommon, Mbed-TLS-3.6.4, OpenGL (libglvnd eller Mesa; Mesa's GL is not supported), pciutils, Qt-6, uthash-2.3.0, Vulkan-Loader, Xorg Libraries, and x264

Recommended

[Notat]

Notat

The options to disable the functionality enabled by the dependencies above are in the Command Explanations.

Optional

Jack2, libajantv2, librist, librnnoise (if not installed, an internal copy will be used), and sndio

Installation of OBS Studio

If you want to enable browser support, ensure you have downloaded the recommended download, then unpack it:

tar -xf ../cef_binary_6533_linux_x86_64.tar.xz &&
mv cef_binary_6533_linux_x86_64 cef-6533

Install OBS Studio by running the following commands:

mkdir build &&
cd    build &&

cmake -D CMAKE_INSTALL_PREFIX=/usr             \
      -D CMAKE_BUILD_TYPE=Release              \
      -D CMAKE_SKIP_INSTALL_RPATH=ON           \
      -D ENABLE_BROWSER=ON                     \
      -D CEF_ROOT_DIR=../cef-6533              \
      -D ENABLE_AJA=OFF                        \
      -D ENABLE_JACK=OFF                       \
      -D ENABLE_NEW_MPEGTS_OUTPUT=OFF          \
      -D OBS_COMPILE_DEPRECATION_AS_WARNING=ON \
      -G Ninja -Wno-dev .. &&

ninja

Now, as the root user:

ninja install

Command Explanations

-D CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør at cmake fjerner hardkodede biblioteksøk stier (rpath) når du installerer en binær kjørbar fil eller et delt bibliotek. Denne pakken trenger ikke rpath når den er installert på standard plassering, og rpath kan noen ganger forårsake uønskede effekter eller til og med sikkerhetsproblemer.

-D ENABLE_BROWSER=ON: This switch enables browser support.

-D CEF_ROOT_DIR=../cef-6533: This switch tells the build system where the CEF binaries are located.

-D ENABLE_AJA=OFF: This switch disables the optional Aja functionality.

-D ENABLE_JACK=OFF: This switch disables the optional Jack2 functionality.

-D ENABLE_NEW_MPEGTS_OUTPUT=OFF: This switch disables the optional MpegTS Output functionality.

-D ENABLE_PIPEWIRE=OFF: Disables Pipewire support if you have not installed it.

-D ENABLE_SPEEXDSP=OFF: Disables Speex support if you have not installed it.

-D ENABLE_WEBRTC=OFF: Disables WebRTC support if you have not installed the recommended dependencies.

-D ENABLE_WEBSOCKET=OFF: Disables WebSocket support if you have not installed the recommended dependencies.

-D ENABLE_V4L2=OFF: Disables V4L2 support if you have not installed the recommended dependencies.

-D ENABLE_VLC=OFF: Disables VLC support if you have not installed the recommended dependencies.

-D ENABLE_NVENC=OFF -D ENABLE_NVENC_FFMPEG_IDS=OFF: These options disable NVIDIA hardware encoding support if you have not installed the recommended dependencies.

-D ENABLE_QSV11=OFF: Disables Intel QSV11 hardware encoding support if you have not installed the recommended dependencies.

-D ENABLE_SCRIPTING=OFF: Disables scripting support if you have not installed the recommended dependencies.

-D OBS_COMPILE_DEPRECATION_AS_WARNING=ON: This ensures there are no build failures due to deprecated features in the FFmpeg side being used.

Contents

Installed Programs: obs and obs-ffmpeg-mux
Installed Libraries: libobs-frontend-api, libobs-opengl, libobs-scripting, libobs, and many plugins in /usr/lib/obs-plugins
Installed Directories: /usr/include/obs, /usr/lib/cmake/{libobs,obs-frontend-api,obs-websocket-api}, /usr/lib/obs-plugins, /usr/lib/obs-scripting, and /usr/share/obs

Short Descriptions

obs

is the OBS Studio program

obs-ffmpeg-mux

is the FFmpeg multiplexer that obs uses

libobs-frontend-api

contains API functions for the OBS Studio frontend

libobs-opengl

provided OpenGL rendering functions for OBS Studio

libobs-scripting

provides functions for OBS Studio scripts

libobs

contains all the functions used by OBS Studio and its plugins