Open Broadcaster Software (OBS) is the most popular streaming software. In this blog, I would like to discuss about how to install and use OBS on NVIDIA Jetson AGX Xavier.
Ayachika Kitazaki has figured out how to install OBS on Jetson Nano. Most of his protocols are still working except that we have to use a selected version of the OBS to install, as the latest version is broken for the ARM64 platform.
$ sudo apt update $ sudo apt install \ build-essential \ checkinstall \ cmake \ git \ libnss3-dev \ 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 \ libx11-dev \ libx264-dev \ libxcb-shm0-dev \ libxcb-xinerama0-dev \ libxcomposite-dev \ libxinerama-dev \ pkg-config \ python3-dev \ qt5-default \ qtbase5-dev \ qtbase5-private-dev \ qttools5-dev-tools \ libqt5svg5-dev \ swig \ libxcb-randr0-dev \ libxcb-xfixes0-dev \ libx11-xcb-dev \ libxcb1-dev
Download OBS-Studio 26.1.2 from GitHub.
$ wget https://github.com/obsproject/obs-studio/archive/refs/tags/26.1.2.zip $ unzip 26.1.2.zip $ rm 26.1.2.zip
Build and install it onto the system.
$ cd obs-studio-26.1.2 $ mkdir -p build && cd build $ cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr .. $ make -j $ sudo make install
Note that we are not building from the master branch because it is currently broken for ARM64 builds. It is very likely that
pipewire is missing in the Linux ARM64 system.
CMake Error at /usr/local/share/cmake-3.20/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find PipeWire (missing: PIPEWIRE_LIBRARIES PIPEWIRE_INCLUDE_DIRS SPA_INCLUDE_DIRS) (found version "")
pipewire on the Linux ARM64 system according to the official instruction was also not successful.
OBS might have difficulty finding the OpenGL library. It could be manually specified using
$ LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libGL.so obs
Streaming to Twitch has been tested and got no problems.