In this quick-and-dirty guide we’re building OBS from source, creating a Debian package for Debian 12 / Testing, and installing it. You can find the official build guide here.

Have questions about your Linux setup? Ask in our forums.


ENABLE DEB-MULTIMEDIA

Download and install the Debian multimedia repository keyring.

wget https://www.deb-multimedia.org/pool/main/d/deb-multimedia-keyring/deb-multimedia-keyring_2016.8.1_all.deb
sudo dpkg -i deb-multimedia-keyring_2016.8.1_all.deb

Add the following line to /etc/apt/sources.list

deb https://www.deb-multimedia.org bookworm main non-free

Update system repositories.

sudo apt update

INSTALL OBS DEPENDENCIES

Install the needed dependencies.

sudo apt install cmake git checkinstall build-essential libmbedtls-dev libasound2-dev libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libcurl4-openssl-dev libfdk-aac-dev libfontconfig-dev libfreetype6-dev libgl1-mesa-dev libjack-jackd2-dev libjansson-dev libluajit-5.1-dev libpulse-dev libqt5x11extras5-dev libspeexdsp-dev libswresample-dev libswscale-dev libudev-dev libv4l-dev libvlc-dev libwayland-dev libx11-dev libx264-dev libxcb-shm0-dev libxcb-xinerama0-dev libxcomposite-dev libxinerama-dev pkg-config python3-dev qt6-svg-dev swig libxcb-randr0-dev libxcb-xfixes0-dev libxcb-shm0-dev libxcb-xinerama0-dev libxcb-composite0-dev libx11-xcb-dev libxcb1-dev libxss-dev librist-dev libsrt-openssl-dev qt6-base-dev qt6-base-private-dev nlohmann-json3-dev libwebsocketpp-dev libasio-dev libva-dev libpipewire-0.3-dev v4l2loopback-dkms libvpl-dev ffmpeg libpci-dev libqrcodegencpp-dev libdrm-dev nv-codec-headers uthash-dev

Clone the OBS GitHub repository 

git clone --recursive https://github.com/obsproject/obs-studio.git

Enter the obs-studio directory

cd obs-studio 

Download and unpack the browser binary 

wget https://cdn-fastly.obsproject.com/downloads/cef_binary_5060_linux64.tar.bz2

Decompress the browser binary

tar -xjf cef_binary_5060_linux64.tar.bz2

Create the build directory and enter it

mkdir build ; cd build

CONFIGURE OBS

cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_BROWSER=ON -DENABLE_PIPEWIRE=ON -DENABLE_PULSEAUDIO=ON -DENABLE_HEVC=ON -DENABLE_VST=ON -DENABLE_JACK=ON -DENABLE_WEBRTC=OFF -DENABLE_AJA=OFF -DCEF_ROOT_DIR="../cef_binary_5060_linux64/" ..

Common build options

-DENABLE_PIPEWIRE=ON 
-DENABLE_PULSEAUDIO=ON 
-DENABLE_VST=ON 
-DENABLE_JACK=ON 
-DENABLE_ALSA=ON 
-DENABLE_HEVC=ON 
-DBUILD_BROWSER=ON 
-DENABLE_AJA=OFF 
-DENABLE_VLC=ON 
-DENABLE_WEBRTC=OFF 
-DCMAKE_INSTALL_PREFIX=/usr

COMPILE OBS

make -j `nproc`

BUILD THE DEBIAN PACKAGE

sudo checkinstall --default --pkgname=obs-studio --fstrans=no --backup=no --pkgversion="$(date +%Y%m%d)-git" --deldoc=yes

INSTALL DEBIAN PACKAGE

sudo dpkg -i *.deb

RUN LDCONFIG

sudo ldconfig

That’s it! You now have a bleeding-edge version of OBS for your Debian 12 installation.

Have questions about your Linux setup? Ask in our forums.

VennStone

View all posts

Add comment

Recent Posts