LIVE MOSE DEV
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode
Source

Jeudi 15 juin 2023

Recompilation d’OBS avec QT6

Alors, mes soucis de plugins viennent du fait que j’avais pas installé QT6 au moment du build, donc on va refaire et noter les étapes.

Contexte: je suis sous debian 13 (trixie) et je veux installer OBS en version portable (donc tout en local dans mon home dir).

donc d’abord:

sudo apt install cmake ninja-build pkg-config clang clang-format build-essential curl ccache git
sudo apt install qt6-base-dev qt6-base-private-dev libqt6svg6-dev qt6-wayland qt6-image-formats-plugins
sudo apt install libasound2-dev libfdk-aac-dev libfontconfig-dev libfreetype6-dev \
  libjack-jackd2-dev libpulse-dev libsndio-dev libspeexdsp-dev libudev-dev libv4l-dev \
  libva-dev libvlc-dev libdrm-dev nlohmann-json3-dev libwebsocketpp-dev libasio-dev

ensuite je suis les instructions pour linux-portable mais en adaptant un peu:

  • shallow clone avec --depth 1 parce que c’est juste pour build
  • directement la branche qui m’interesse, donc --branch 29.1.2
  • ajout de -DENABLE_NEW_MPEGTS_OUTPUT=OFF aux options de build, sinon il se plaint que j’ai pas installé SRT et RIST (d’ailleurs, peut-être que ca serait pas mal de tester ca un jour)
mkdir obs-src && cd obs-src
wget https://cdn-fastly.obsproject.com/downloads/cef_binary_5060_linux64.tar.bz2
tar -xjf ./cef_binary_5060_linux64.tar.bz2
git clone --depth 1 --branch 29.1.2 --recursive https://github.com/obsproject/obs-studio.git
cd obs-studio
cmake \
  -DLINUX_PORTABLE=ON \
  -DCMAKE_INSTALL_PREFIX="${HOME}/obs-studio-portable" \
  -DENABLE_BROWSER=ON \
  -DENABLE_NEW_MPEGTS_OUTPUT=OFF \
  -DCEF_ROOT_DIR="../../cef_binary_5060_linux64" \
  -DENABLE_AJA=OFF \
  ..
make -j4 && make install

Je teste un lancement pour voir

cd ~/obs-studio-portable/bin/64bit
./obs

Et je verifie dans la console que je suis bien en Qt6

info: Qt Version: 6.4.2 (runtime), 6.4.2 (compiled)

Mais bon, mon advanced scene switcher n’apparait toujours pas. Ni le plugin waveform qui est censé remplacer spectralizer. Par contre transition-table fonctionne.

Alors, dans les logs il me dit:

libprocps.so.8: cannot open shared object file: No such file or directory
libopencv_objdetect.so.4.5d: cannot open shared object file: No such file or directory

Voila autre chose. libprocps8 était pourtant disponible en debian 12 mais en debian 13 il n’y a que libprocps6. J’ai aucune idée de la différence et je vais faire comme s’il n’y en avait pas. Instant goret en perspective:

cd /lib/x86_64-linux-gnu/
sudo ln -s libprocps.so.6.0.0 libprocps.so.8

C’est bien sale, mais ca marche, OBS se lance et m’affiche bien l’ASS, mais il me prévient qu’il a pas réussi a charger la lib opencv et que certains truc pourraient ne pas marcher. Mais en lançant OBS et en trifouillant un peu l’interface d’ASS ça a l’air de marcher. OpenCV il faudra tout de même que je l’active, mais ca va aller comme ca pour le moment.