OBS Studio - Le Bottin des Jeux Linux

OBS Studio

🗃️ Specifications

📰 Title: OBS Studio 🕹️ / 🛠️ Type: Tool
🗃️ Genre: Tool 🚦 Status: 06. Tested & Working
🏷️ Category: Tool ➤ Input devices ➤ Webcam ➤ Video Recording 🌍️ Browser version:
🔖 Tags: Tool; Webcam; Video Recording; Live Streaming; Screen Sharing; Multimedia; Plugins system; Flagship 📦️ Package Name: obs-studio
🐣️ Approx. start: 2013-10-01 📦️ Arch package: ✓
🐓️ Latest: 2022-08-27 📦️ RPM package: ✓
📍️ Version: Latest : 27.2.4 / Dev : 28.0 RC 2 / adba393 📦️ Deb package: ✓
🏛️ License type: 🕊️ Libre 📦️ Flatpak package: ✓
🏛️ License: GPL-2+, LGPL-2.1+, ISC, BSD-3-clause 📦️ Snap package: ✓
🏝️ Perspective: First person (interface) 📦️ AppImage package: ✓
👁️ Visual: 2D ⚙️ Generic binary: ✓
⏱️ Pacing: Real Time 📄️ Source: ✓
👫️ Played: Single 📱️ PDA support:
🎖️ This record: 5 stars 🕳️ Not used:
🎀️ Game design: 5 stars 👫️ Contrib.: Goupil & Louis
🎰️ ID: 15056 🐛️ Created: 2016-08-16
🐜️ Updated: 2022-08-28

📖️ Summary

[fr]: Un logiciel libre et multi-plateforme pour la diffusion en direct et l'enregistrement d'écran. Il dispose d'un système de plugins, et supporte un nombre illimité de scènes et de sources, le streaming en direct, différents formats d'enregistrement, la capture via le GPU, l'affichage en direct de plusieurs périphériques d'enregistrements (webcams, cartes de capture, ...), le ré-échantillonnage, et de nombreuses autres fonctionnalités. [en]: A libre and multi-platform software for live streaming and screen recording. It has a system of plugins, and supports an unlimited number of scenes and sources, live streaming, different recording formats, GPU-based game capture, DirectShow capture device support (webcams , capture cards, ...), resampling, and tons of other features.

🚦 Status

💡 Lights on: ✓ 😴️ Waiting to be published:
🤔️ Why ?: 🐞️ Bugfix 🦺️ Work in progress:
🎨️ Improvement of this entry: 🚧️ Some work remains to be done:

🎥️ Videos

📰 Rapport d'activité / Progress Report [en] / [fr] : (28.0 Beta/202208), (28.0 Beta/202208),


🕯️ How To [en] / [en] / [fr] : (202112), (202101), (202101),


🐧 Linux joue / Linux plays : The Linux Gamer(201611), Don't Call Me Lenny!(201601), rb_plays(201506),

🕸️ Links

🏡️ Website & videos
[Homepage] [Dev site] [Features/About] [Screenshots 1 2] [Videos cv(28.0 Beta/202208) cv[fr](28.0 Beta/202208) pv(27.2/202202) pv[fr](27.2/202202) pv[fr](27.2/202201) pv(27.0/202104) pv(27.0/202104) pv[fr](27.0/202104) pv(25.0/202003) pv(25.0/202003) pv(25.0/202003) pv[fr](25.0/202003) t(202xxx) ts(202xxx) gd(202xxx) r(202xxx) lp(201611) lp(201601) lp(201506) ht(202112) ht(202101) ht(202012) ht(23.1/201904) ht(201712) ht(201712) ht(201602) ht(201808) ht(201604) ht(201603) ht(201509) ht(201605) ht(201602) ht(201511) ht(201608) ht[fr](202101) ht[fr](202004) ht[fr](201803) ht[fr](201602) ht[de](201404) ht[ru](20.0.0/201708) ht[pl](23.2.0/201905) ht[cz](202xxx) ht[hu](202xxx) ht[sp](202xxx) ht[pt](201611) g[it](202xxx) g[tr](20.0.0/201708) ht[cn](201605)] [WIKI 1 2] [FAQ] [RSS] [Changelog 1 2 3]

💰 Commercial : [Support their work (Donate)] [Patreon] [open collective]

🍩️ Resources
(empty) :
🛠️ Technical informations
[Open Hub] [PCGamingWiki] [OBS Studio (Linux Support)]

🐘 Social
Devs (OBS Studio Team [fr] [en]) : [Site 1 2] [Chat] [mastodon] [twitter] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
Devs (Hugh Bailey (Jim, jp9000) [fr] [en]) : [Site 1 2] [Chat] [mastodon] [twitter] [PeerTube] [YouTube] [PressKit] [LinkedIn] [Interview 1(202xxx) 2(202xxx)]
Game : [Blog] [Forums] [mastodon] [twitter] [Facebook] [PeerTube] [YouTube] [PressKit] [reddit] [OBS Live Chat] [Discord]

🐝️ Related
[Wikipedia (Open Broadcaster Software) [fr] [en] [de]]
[Wikipedia (Comparison of screencasting software) [fr] [en]] [de]]
[HOLaRSE [de]]

📦️ Misc. repositories
[Debian] [openSUSE] [Repology] [pkgs.org] [Arch Linux / AUR] [AppImage] [Snap] [Flatpak] [PortableLinuxGames]

🕵️ Reviews
[HowLongToBeat] [metacritic] [OpenCritic] [iGDB]

🕊️ Source of this Entry: -

🐘 Social Networking Update (on Mastodon)

🛠️ Title: OBS Studio
🦊️ What's: A libre tool for live streaming & screen recording
🏡️ https://obsproject.com
🐣️ https://github.com/jp9000/obs-studio
🔖 #Linux #Flagship #Tool #VideoRecorder #LiveStreaming #Libre #Deb #RPM #Arch #AppIm #Snap #Flatpak
📖 Our entry: https://bit.ly/bottinLightOn

🥁️ Update (stable): 27.2.4
⚗️ Bugfix
📌️ Changes: https://github.com/obsproject/obs-studio/releases
🐘 From: https://mastodon.cloud/@boilingsteam/108045384828856311
📰 https://yewtu.be/GjkvCgLLPbI
📰[fr] https://yewtu.be/md9aRZGgpNw

(NEW!)
🥁️ Update (dev): 28.0 RC 2
⚗️ Bugfix
📌️ Changes: https://github.com/obsproject/obs-studio/releases
🐘 From: https://mastodon.cloud/@boilingsteam/108894682366893059
📰(v28) https://yewtu.be/pCJERLBl1Nc
📰(v28)[fr] https://yewtu.be/ohD46XHiU6I

🕯️ https://yewtu.be/PV1hOAv2q0o
🐧 https://yewtu.be/O1q0jzsgZ1w?start132

📕 Description [fr]

Un logiciel pour l'enregistrement vidéo et le streaming en direct, par l'OBS Studio Team, initié par Hugh Bailey (Jim, jp9000).

OBS Studio (pour Open Broadcaster Software Studio, ex OBS Multiplatform) est un logiciel libre et multi-plateforme pour la diffusion en direct et l'enregistrement d'écran. Il dispose d'un système de plugins, et supporte un nombre illimité de scènes et de sources, le streaming en direct, différents formats d'enregistrement, la capture via le GPU, l'affichage en direct de plusieurs périphériques d'enregistrements (webcams, cartes de capture, ...), le ré-échantillonnage, et de nombreuses autres fonctionnalités.


Logiciel gratuit et open source pour la diffusion en direct et l'enregistrement d'écran.

OBS Studio est un logiciel conçu pour capturer, composer, encoder, enregistrer et diffuser du contenu vidéo de manière efficace.
Il est distribué sous la licence publique générale GNU v2 (ou toute version ultérieure).

Téléchargez et commencez à diffuser rapidement et facilement sur Windows, Mac ou Linux.
Partagez votre jeu, l’art et le divertissement avec le monde.

☑ Capture et mixage haute performance en temps réel de la vidéo/audio, avec des changements sans effort de scènes illimitées grâce aux transitions personnalisées.
☑ Filtres pour les sources vidéo comme le masquage d’image, correction des couleurs, incrustation via chroma/couleur et bien plus encore.
☑ Table de mixage intuitif avec des filtres par source comme l'antiparasite, la suppression du bruit ainsi que le gain. Prenez le contrôle total avec le plugin VST qui est supporté.
☑ Options de configuration puissantes et faciles à utiliser. Ajouter de nouvelles Sources, dupliquer celles qui existent déjà et ajuster leurs propriétés sans effort.
☑ Panneau de propriétés ergonomique pour une configuration rapide de vos diffusions et enregistrements. Basculez facilement entre différents profils.
☑ Modular 'Dock' UI allows you to rearrange the layout exactly as you like. You can even pop out each individual Dock to it's own window.
☑ OBS prend en charge toutes vos plates-formes de streaming préférées et bien plus encore.
☑ Création de Productions Professionnelles
• Choisissez parmi différentes transitions customisables pour vos changements de scènes
• Créez des raccourcis pour presque toute sorte d'action, comme basculer entre les scènes, démarrer/stopper les streams ou enregistrements, mettre en sourdine des sources audio, push to talk, and bien plus.
• Le mode studio vous permet de prévisualiser vos scènes ainsi que vos sources avant de les afficher sur votre live. Ajustez vos scènes ainsi que vos sources ou créez en de nouvelles et assurez-vous qu'elles sont parfaites avant que vos spectateurs ne les voient.
• Obtenez une vue d'ensemble de votre production à l'aide de Multiview. Surveillez 8 scènes différentes et effectuez facilement le repérage ou la transition vers l'une d'elles en un simple ou double clic.
☑ Créativité Collaborative
• OBS Studio dispose d'une API avancée permettant le développement de plugins, si vous avez des besoins avancés de customisation ou souhaitez des fonctionnalités précises. Travaillez avec les développeurs dans la communauté du streaming pour avoir les fonctionnalités dont vous avez besoin.
• Parcourez ou soumettez le vôtre dans la section Ressources



🍥️ Debian:

Enregistreur et diffuseur pour du contenu vidéo en temps réel

OBS est conçu pour enregistrer ou diffuser du contenu vidéo en direct. Il gère la diffusion RTP en direct vers divers sites de diffusion en temps réel.

Les autres fonctions comprennent :

• encodage en utilisant H264 (x264) et AAC ;
• nombre illimité de scènes et de sources ;
• sortie de fichier en MP4 ou FLV ;
• capture de jeu basée sur le GPU pour une diffusion de jeu de haute performance ;
• ré-échantillonnage bilinéaire ou lanczos3.

Il est à remarquer qu’OBS Studio nécessite une carte vidéo compatible avec OpenGL 3.2.


🌍️ Wikipedia:

OBS Studio, abrégé en OBS, est un logiciel libre et open source de capture d'écran et de streaming pour Microsoft Windows, MacOS et Linux. Il remplace Open Broadcaster Software et devient ainsi multi-plateforme.

Histoire

Le développeur initial est Hugh Bailey, surnommé « Jim » ou « jp9000 ». Avec l'aide d'une importante communauté dont une partie forme le « projet OBS », il maintient le code source sur GitHub tandis que les anomalies sont signalées par les utilisateurs via Mantis.

Le lancement du logiciel débute en 2012 mais il faudra attendre 2016 pour voir la première version stable sortir. Au départ, il se nommait et est aujourd'hui plus connu sous le nom d'« Open Broadcaster Software », abrégé en « OBS ». Lorsque le logiciel est devenu multiplate-forme dépassant le cadre de Microsoft Windows, son nom a changé en 2014 pour « OBS Multiplatform » puis « OBS Studio » à partir de 2016.

En France, OBS Studio est intégré à la liste des logiciels libres recommandés pour le secteur public et au socle interministériel de logiciels libres.

Présentation

OBS Studio permet de capturer en temps réel l'écran d'un ordinateur et de l'enregistrer dans une vidéo, ou bien d'en diffuser le contenu en streaming sur Twitch, YouTube ou Dailymotion en autres. Il utilise plusieurs bibliothèques logicielles pour cela dont notamment :

• x264 : permet d'encoder la vidéo en H.264.
• libmp3lame : permet d'encoder l'audio en MP3.
• libfaac : permet d'encoder l'audio en AAC.
• librtmp : permet de diffuser en streaming en RTMP.
• libsamplerate : permet de convertir des flux audio.

Il est programmé essentiellement en C et C++, et distribué sous la licence GNU GPL-ersion 2. On le retrouve, en multilingue, pour Microsoft Windows à partir de Windows 7, sous MacOS à partir d'OS X 10.8.5, et pour Linux.

Le logiciel est aussi capable de gérer des plugins qui ajoutent des fonctionnalités supplémentaires pour l'utilisateur.

📕 Description [en]

📕🐧"A libre & mature software for live streaming & screen recording"🐧📕

Free and open source software for live streaming and screen recording.

OBS Studio is software designed for capturing, compositing, encoding, recording, and streaming video content, efficiently.
It's distributed under the GNU General Public License v2 (or any later version).

Download and start streaming quickly and easily on Windows, Mac or Linux.

☑ High performance real time video/audio capturing and mixing. Create scenes made up of multiple sources including window captures, images, text, browser windows, webcams, capture cards and more.
☑ Set up an unlimited number of scenes you can switch between seamlessly via custom transitions.
☑ Intuitive audio mixer with per-source filters such as noise gate, noise suppression, and gain. Take full control with VST plugin support.
☑ Powerful and easy to use configuration options. Add new Sources, duplicate existing ones, and adjust their properties effortlessly.
☑ Streamlined Settings panel gives you access to a wide array of configuration options to tweak every aspect of your broadcast or recording.
☑ Modular 'Dock' UI allows you to rearrange the layout exactly as you like. You can even pop out each individual Dock to it's own window.
☑ OBS supports all your favorite streaming platforms and more.
☑ Create Professional Productions
• Choose from a number of different and customizable transitions for when you switch between your scenes or add your own stinger video files.
• Set hotkeys for nearly every sort of action, such as switching between scenes, starting/stopping streams or recordings, muting audio sources, push to talk, and more.
• Studio Mode lets you preview your scenes and sources before pushing them live. Adjust your scenes and sources or create new ones and ensure they're perfect before your viewers ever see them.
• Get a high level view of your production using the Multiview. Monitor 8 different scenes and easily cue or transition to any of them with merely a single or double click.
☑ Collaborative Creativity
• OBS Studio is equipped with a powerful API, enabling plugins and scripts to provide further customization and functionality specific to your needs.
• Utilize native plugins for high performance integrations or scripts written with Lua or Python that interface with existing sources.
• Work with developers in the streaming community to get the features you need with endless possibilities.
• Browse or submit your own in the Resources section


🍥️ Debian:

Recorder and streamer for live video content

OBS Studio is designed for efficiently recording and streaming live video content. It supports live RTP streaming to various streaming sites.

Other features include:

• Encoding using H264 (x264) and AAC
• Unlimited number of scenes and sources
• File output to MP4 or FLV
• GPU-based game capture for high performance game streaming
• Bilinear or lanczos3 resampling

Note that OBS Studio requires an OpenGL 3.2 compatible video card.


🌍️ Wikipedia:

Open Broadcaster Software (OBS) is a free and open-source cross-platform streaming and recording program built with Qt and maintained by the OBS Project. Since 2016, the software is now referred to as OBS Studio. There are versions of OBS Studio available for Microsoft Windows, macOS, and Linux distributions. OBS Project raises funds on Open Collective and Patreon.

Overview

OBS is a free and open-source software suite for recording and live streaming. Written in C and C++, OBS provides real-time source and device capture, scene composition, encoding, recording, and broadcasting. Transmission of data is primarily done via the Real Time Messaging Protocol (RTMP) and can be sent to any RTMP supporting destination, including many presets for streaming websites such as YouTube, Twitch.tv, Instagram and Facebook.

For video encoding, OBS is capable of using the x264 free software library, Intel Quick Sync Video, Nvidia NVENC and the AMD Video Coding Engine to encode video streams into the H.264/MPEG-4 AVC format and the H.265/HEVC format. Audio can be encoded using either the MP3 or AAC codecs. Advanced users can choose to use any codecs and containers available in libavcodec / libavformat as well as output the stream to a custom ffmpeg URL.

User interface

The main user interface is organized into five sections: scenes, sources, audio mixer, transitions, and controls. Scenes are groups of sources like live and recorded video, text and audio. The mixer panel lets the user mute the audio, and adjust the volume through virtual faders, and apply effects by pressing the cogwheel next to the mute button. The control panel has options for starting/stopping a stream or recording, a button to transform OBS to a more professional Studio Mode (see below), a button for opening the settings menu and a button to exit the program. The upper section has a live video preview, used to monitor and edit the current scene. The user interface can be switched to a variety of themes, including both dark and light themes, depending on what the user prefers.

When in Studio Mode, there are two canvas preview windows, the left one for modifying and preview of non-active scenes, while the right window is for preview of the live scene ("Preview" and "Program" respectively). In the middle there is a secondary transition button, allowing for transitioning to the non-active scene in the left window using user-defined "quick transitions".

There are some simple tutorials on the Internet that show how to use Open Broadcaster Software, including more in-depth tutorials designed to cover every aspect of the application.

History

Open Broadcaster Software started out as a small project created by Hugh "Jim" Bailey, but quickly grew with the help of many online collaborators working both to improve OBS and spread the knowledge about the program. The first version was released in August 2012. In 2014, development started on a rewritten version known as OBS Multiplatform (later renamed OBS Studio) for multi-platform support, a more thorough feature set, and a more powerful API. In 2016, OBS "Classic" was no longer supported, and OBS Studio became the primary version.

Plug-ins

Open Broadcaster Software supports a variety of plug-ins to extend its functionality. Plug-ins are loaded as native code DLL files, although a wrapper plug-in is available that allows hosting of plug-ins written in the .NET Framework.

Software based on OBS

(...)

🚧️ Installation [fr]

🔧️ INSTALLATION :

⚙️ Installation à partir du binaire du jeu :

• (✔ 22.0.3+dfsg1-1) Il est dans les dépôts, il suffit d'installer le paquet (souvent dans sa dernière version).


📄️ Installation à partir du source du jeu :

• (✔ v. 0.14.2) Si vous souhaitez quelque-chose de très récent (versions de développement) et/ou qu'il n'y a pas de binaire disponible pour votre distribution/architecture (32/64-bits), la compilation du source est une bonne idée, voir un passage obligé.

Une doc spécifique DEBIAN est disponible (je ne l'avais pas remarqué au premier abord) : [Doc d'installation DEBIAN]
Pour les autres distributions, voir [Doc d'installation toutes distributions]

• Installez au préalable les paquets suivants (pour Debian/Ubuntu, si le nom du paquet suivi par le suffixe "-dev" est disponible, installez-le en priorité) : ffmpeg libffms2 libavcodec libavformat libavfilter libavdevice libcurl4-openssl libqt5x11extras5 libxcb-xinerama0 libx264
(1ere liste non exhaustive, car une partie des bibliothèques nécessaires étaient probablement déjà installées chez moi)

La doc sur le site donne en plus : libx11 libgl1-mesa libpulse libxcomposite libxinerama libv4l libudev libfreetype6 libfontconfig qtbase5 libxcb-shm0 libjack-jackd2

• Récupérez le dernier [source] (fichier tar.gz par exemple) et décompressez-le
• À la racine de son répertoire lancez la commande habituelle :
$ cmake .
(n'oubliez pas le ".")

Nota :
S'il vous manque des bibliothèques, cette commande se terminera par une erreur, lisez les dernières lignes, la bibliothèque manquante sera indiquée (il sera peut-être nécessaire de faire plusieurs tentatives après vos nouvelles installations de bibliothèques).
Si le script vous dit : "By not providing "FindQt5X11Extras.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Qt5X11Extras""
comprenez qu'il manque "Qt5X11Extras", et donc qu'il faut que vous installiez la bibliothèque libqt5x11extras5

• Si cette phase se termine sans erreur, poursuivez par un :
$ make
(ou $ make -j8 si vous avez un quad core avec 8 threads, çà ira plus vite)

• Si aucune erreur n'est signalée, et si vous lui faites confiance (personnellement je l'ai fais, sinon il ne trouve pas ses fichiers), terminez l'installation par la commande habituelle (en root, pour qu'il puisse avoir accès à vos répertoires d'installation) :
# make install

• Pour tester son fonctionnement (et voir si il trouve bien ses bibliothèques), lancez :
$ obs

• Si au lancement d'obs vous obtenez une erreur du type "obs: error while loading shared libraries: libobs-frontend-api.so.0: cannot open shared object file: No such file or directory" :
Sur ma Debian Sid, cette bibliothèque se trouve dans /usr/local/lib/. Si ce n'est pas le cas sur votre distribution, lancez une recherche en root via les commandes :
# cd /
# find ./ | grep libobs-frontend-api.so.0

Supposons, que sur votre installation elle soit dans /usr/local/lib/ :
Créez le fichier : /etc/ld.so.conf.d/autreslib.conf
Dans ce fichier créez une seule ligne ne contenant que ceci : /usr/local/lib/
Enregistrez et relancez obs pour le test.


🚀️ LANCEMENT DE L'INTERFACE :

• Si vous avez installé le jeu à partir d'un paquet, ou l'avez compilé puis installé dans les répertoires système : Alt F2 puis saisissez : obs


PARAMÉTRAGE :

➥ Affichage de votre Webcam :

• Cliquez sur l'icône "+"
• Source média / Media Source (si vous avez l'interface en Anglais)
• Créer une nouvelle source / Create new : (saisissez le nom que vous souhaitez, peu importe, personnellement j'ai choisi "Logitech QuickCam Pro 4000")
• Cliquez sur "OK"
• Décochez "Fichier local" / "Local File"
• Entrée / Input : /dev/video0
• Format d'entrée / Input format : ne mettez rien
• Cliquez sur "OK", l'image de votre webcam apparaît :)

➥ Fond d'écran :

• Cliquez sur l'icône "+"
• Sélectionnez : Image
• Donnez-lui un nom
• Cliquez sur "OK"
• Cliquez sur "Browse" et choisissez une image sur votre disque dur (pour la copié d'écran ci-dessus, j'ai pris une copie du jeu "Parkitect") puis "OK"
• Vous pouvez ensuite l'ajuster à la taille de l'écran (ce que j'ai retenu) ou non, la masquer (cliquez sur l'icône de l'œil près du nom de votre image) ou non.

➥ Capture d'une application :

• Cliquez sur l'icône "+"
• Window : avec le sélecteur choisissez l'application actuellement en fonctionnement que vous souhaitez afficher à l'écran.

Enjoy !


AUTRES UTILITAIRES TESTÉS :

💡 Nota : votre prise USB est à prendre en compte dans vos tests (chez moi j'ai eut des soucis avec l'une de mes prises USB, faussant mes tests). Si aucun outil ne fonctionne sur la prise USB courante, testez-en une autre.

➥ cheese :

Nickel, l'interface la plus belle et la plus simple. Je teste des effets (assez marrants), puis le plein écran, ce qui finit par faire planter la webcam (image noir avec message d'erreur).
Je relance : l'image s'affiche brièvement puis plante à nouveau. Je remet l'image en 160x120. Rien n'y fait, j'obtiens à chaque fois le même comportement : la led de la webcam clignote 2 secondes, je vois l'image au même moment puis l'écran noir et le message d'erreur ("Une erreur est intervenue pendant la lecture de la vidéo de la webcam"). Zut.

➥ $ vlc v4l2:// :

À noter qu'il faut parvenir à installer le méta-paquet vlc, sinon çà ne fonctionne pas. Sur ma Debian Sid, dans un premier temps Synaptic ne voulait pas (problème de dépendances) mais en installant vlc-bin et vlc-data il a fini par de lui-même rétrograder de version (génial), puis il a accepté dans un second temps d'installer le méta-paquet vlc (bravo pour les progrès de synaptic !).
Çà marche nickel.

➥ $ xawtv -nodga :

Idem. J'arrive à allumer la led de la webcam plusieurs secondes (mais écran noir) en lançant les commandes "G" (Grab Image (ppm)) et "J" (Grab Image (jpeg)).

➥ $ mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480 :

Çà marche, j'ai l'image de manière stable.

➥ Camorama :

il fonctionne bien lui aussi.

🔍️ Test [fr]

Test du source en Décembre (17.0) :

🎯️ Objectif de ce test : tester sa compilation, rédiger/mettre à jour sa notice d'installation et tester son fonctionnement.

Il m'aura fallu installer en plus les bibliothèques suivantes :
libqt5x11extras5-dev libxcb-xinerama0-dev libx264-dev

Et la compilation fonctionne !
Elle se termine par :
[ 99%] Building CXX object UI/CMakeFiles/obs.dir/qrc_obs.cpp.o
[100%] Building CXX object UI/CMakeFiles/obs.dir/obs_automoc.cpp.o
[100%] Linking CXX executable obs
[100%] Built target obs

Mais au lancement j'obtiens :
obs-studio-17.0.0/UI$ ./obs

Attempted path: share/obs/obs-studio/locale/en-US.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/en-US.ini
error: Failed to load locale
info: == Profiler Results =============================
info: run_program_init: 7999,62 ms
info: ┗OBSApp::AppInit: 4989,11 ms
info: ┗OBSApp::InitLocale: 4980,61 ms
info: =================================================
info: == Profiler Time Between Calls ==================
info: =================================================
info: Number of memory leaks: 0

Je lance donc :
$ cd ..
(obs-studio-17.0.0/)
# make install
puis :
$ obs
obs: error while loading shared libraries: libobs-frontend-api.so.0: cannot open shared object file: No such file or directory

J'ai failli laisser tomber, une fois de plus, et puis j'ai lancé une petite recherche sur Duckduckgo.com (qui m'a très bien aiguillé) avec les paramètres suivants :
"libobs-frontend-api.so.0: cannot open shared object file: No such file or directory"

J'ai obtenu en première réponse et dans un encadré (à la manière des infos tirées de Wikipedia) :
"Linux error while loading shared libraries cannot open shared object file No such file or directory
Your library is a dynamic library. You need to tell the operating system where it can locate it at runtime.
To do so, we will need to do those easy steps:

(1 ) Find where the library is placed if you don't know it.
cd /
sudo find ./ | grep the_name_of_the_file.so

(2) Check for the existence of the dynamic library path environnement variable(LD_LIBRARY_PATH)
$ echo $LD_LIBRARY_PATH
if there is nothing to be display we need to add the default path value (or not as you wich)
$ LD_LIBRARY_PATH=/usr/local/lib

(3) We add the desire path and export it and try the application
$ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/my_library/path.so.something
$ export LD_LIBRARY_PATH
$ ./my_app

source : https://www.gnu.org/software/gsl/manual/html_node/Shared-Libraries.html
--XOR"

Je suis très agréablement surpris par l'aide proposée, merci Duckduckgo !

Je lance donc :
# cd /
# find ./ | grep libobs-frontend-api.so.0
find: ‘./run/user/1000/gvfs’: Permission non accordée
./usr/local/lib/libobs-frontend-api.so.0.0
./usr/local/lib/libobs-frontend-api.so.0
./mnt/DDprc/Download/obs-studio-17.0.0/rundir/RelWithDebInfo/bin/32bit/libobs-frontend-api.so.0.0
./mnt/DDprc/Download/obs-studio-17.0.0/UI/obs-frontend-api/libobs-frontend-api.so.0
./mnt/DDprc/Download/obs-studio-17.0.0/UI/obs-frontend-api/libobs-frontend-api.so.0.0

Puis :
$ echo $LD_LIBRARY_PATH
/home/goupil2/.local/lib

et donc (j'ajoute "/usr/local/lib/" dans le chemin de recherche provisoire (le temps de la session) de ma distribution) :
$ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/
$ export LD_LIBRARY_PATH

je vérifie :
$ echo $LD_LIBRARY_PATH
/home/goupil2/.local/lib:/usr/local/lib/
$ obs
Attempted path: share/obs/obs-studio/locale/en-US.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/en-US.ini
Attempted path: share/obs/obs-studio/locale.ini
Attempted path: /usr/local/share/obs/obs-studio/locale.ini
Attempted path: share/obs/obs-studio/locale/fr-FR.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/fr-FR.ini
info: Using preferred locale 'fr-FR'
Attempted path: share/obs/obs-studio/themes/Default.qss
Attempted path: /usr/local/share/obs/obs-studio/themes/Default.qss
Attempted path: share/obs/obs-studio/license/gplv2.txt
Attempted path: /usr/local/share/obs/obs-studio/license/gplv2.txt
info: Processor: 8 logical cores
info: Processor: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz
info: Physical Memory: 6048MB Total
info: Kernel Version: Linux 4.6.0-1-rt-686-pae
info: Distribution: "Debian GNU/Linux" Unknown
info: Portable mode: false
QObject::connect: invalid null parameter
info: OBS 0.0.1 (linux)
info: ---------------------------------
info: ---------------------------------
info: audio settings reset:
samples per sec: 44100
speakers: 2
info: OpenGL version: 3.2.0 NVIDIA 340.101

info: ---------------------------------
info: video settings reset:
base resolution: 1920x1200
output resolution: 1148x718
downscale filter: Bicubic
fps: 30/1
format: NV12
info: ---------------------------------
libDeckLinkAPI.so: Ne peut ouvrir le fichier d'objet partagé: Aucun fichier ou dossier de ce type
info: No blackmagic support
error: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: Ne peut ouvrir le fichier d'objet partagé: Aucun fichier ou dossier de ce type

info: ---------------------------------
info: Loaded Modules:
info: text-freetype2.so
info: rtmp-services.so
info: obs-x264.so
info: obs-transitions.so
info: obs-outputs.so
info: obs-filters.so
info: obs-ffmpeg.so
info: linux-pulseaudio.so
info: linux-decklink.so
info: linux-capture.so
info: linux-alsa.so
info: image-source.so
info: frontend-tools.so
info: ==== Startup complete ===============================================
error: Service '' not found
info: No scene file found, creating default scene
info: All scene data cleared
info: ------------------------------------------------
info: pulse-input: Server name: 'pulseaudio 9.0'
error: pulse-input: An error occurred while getting the source info!
info: pulse-input: Server name: 'pulseaudio 9.0'
error: pulse-input: An error occurred while getting the source info!
info: Switched to scene 'Scène'
warning: Failed to glob scene collections
info: Update check: last known remote version is 0.4.0

Çà marche !!!

Mais le lendemain, en console, je retrouve mon message précédent :
$ obs
obs: error while loading shared libraries: libobs-frontend-api.so.0: cannot open shared object file: No such file or directory

Normal, le chemin entré précédemment pour cette bibliothèque ne fonctionnait que l'espace d'une session.
Il faut donc que je trouve comment écrire cela de manière plus pérenne.

Toujours sur duckduckgo.com je lance :
"LD_LIBRARY_PATH how to fix the path"

et j'obtiens en première réponse et encadré (à la manière des infos tirées de Wikipedia) :
"How to set the environmental variable LD_LIBRARY_PATH in linux

You should add more details about your distribution, for example under Ubuntu the right way to do this is to add a custom .conf file to /etc/ld.so.conf.d, for example
sudo gedit /etc/ld.so.conf.d/randomLibs.conf
inside the file you are supposed to write the complete path to the directory that contains all the libraries that you wish to add to the system, for example
/home/linux/myLocalLibs
Montrer plus Plus sur Stack Overflow"
Donc visiblement les infos sont tirées du site "Stack Overflow".
Génial. Bravo. Merci.


M'inspirant de leur doc, je créé donc le fichier : /etc/ld.so.conf.d/autreslib.conf
dans lequel je ne met qu'une ligne : /usr/local/lib/
Puis je lance à nouveau : $ obs
Çà marche. Nickel.
J'écris une petite donc au chapitre "Installation".



Test de fonctionnement de ma Webcam :

🎯️ Objectif de ce test : tester le fonctionnement de ma Webcam.

Reste que ma vieille webcam Logitech ne s'affiche pas à l'écran.
Je l'avais acheté il y a quelques années et n'ai jamais réussi à l'utiliser de manière stable, mais il est vraisemblable qu'à présent son usage sous Linux soit nettement plus aisé.
Je cherche sur internet et tombe (comme d'habitude) sur l'excellent site [UBUNTU-fr]

Je suis cette documentation et commence les tests :
$ lsusb
(...)
Bus 001 Device 007: ID 046d:08b2 Logitech, Inc. QuickCam Pro 4000
(...)

• Je teste gnome-media, mais comme d'habitude sous Linux, çà ne marche pas comme dans les docs :), pas de paquet gnome-media, mais le paquet qui s'en rapproche le plus : gnome-media-profiles
$ gstreamer-properties
bash: gstreamer-properties : commande introuvable

La seule commande fournie est : /usr/bin/gnome-audio-profiles-properties
mais elle ne correspond pas avec ce que je cherche.
Visiblement le paquet [gnome-media sur Debian] n'est plus disponible que pour l'architecture arm64 dans les dépôts (car plus de responsable de paquet et le paquet souffrait de bugs, voir [Debian Bug report logs]). Il va falloir que je trouve autre chose.

• Toujours selon la doc UBUNTU, j'installe la bibliothèque : libpt2.10.11

Puis je teste la commande :
$ mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480
MPlayer 1.3.0 (Debian), built with gcc-6.2.1 (C) 2000-2016 MPlayer Team
do_connect: could not connect to socket
connect: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing tv://.
TV file format detected.
Selected driver: v4l2
name: Video 4 Linux 2 input
author: Martin Olschewski
comment: first try, more to come ;-)
v4l2: your device driver does not support VIDIOC_G_STD ioctl, VIDIOC_G_PARM was used instead.
Selected device: Logitech QuickCam Pro 4000
Capabilities: video capture read/write streaming
supported norms:
inputs: 0 = Camera;
Current input: 0
Current format: YUV420
tv.c: norm_from_string(pal): Bogus norm parameter, setting default.
v4l2: ioctl enum norm failed: Inappropriate ioctl for device
Error: Cannot set norm!
Selected input hasn't got a tuner!
v4l2: ioctl set mute failed: Invalid argument
v4l2: ioctl query control failed: Invalid argument
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
Movie-Aspect is undefined - no prescaling applied.
VO: [vdpau] 640x480 => 640x480 Planar I420
Selected video codec: [rawi420] vfm: raw (RAW I420)
==========================================================================
Audio: no sound
Starting playback...
v4l2: ioctl streamon failed: No space left on device

Visiblement il trouve bien ma Logitech QuickCam Pro 4000, mais il ne m'affiche qu'un écran vert :(

• J'installe : xawtv
et je lance :
$ xawtv -nodga
This is xawtv-3.103, running on Linux/i686 (4.6.0-1-rt-686-pae)
xinerama 0: 1920x1200+0+0
xinerama 1: 1920x1200+1920+0
vid-open-auto: using grabber/webcam device /dev/video0
Alsa devices: cap: hw:1,0 (/dev/video0), out: default
ALSA lib pcm.c:8251:(snd_pcm_recover) underrun occurred
libv4l2: error turning on stream: Aucun espace disponible sur le périphérique
ioctl: VIDIOC_STREAMON(int=1): Aucun espace disponible sur le périphérique
libv4l2: error dequeuing buf: Argument invalide
ioctl: VIDIOC_DQBUF(index=0;type=VIDEO_CAPTURE;bytesused=0;flags=0x0 [];field=ANY;;timecode.type=0;timecode.flags=0;timecode.frames=0;timecode.seconds=0;timecode.minutes=0;timecode.hours=0;timecode.userbits="";sequence=0;memory=MMAP): Argument invalide
ALSA lib pcm.c:8251:(snd_pcm_recover) overrun occurred
ALSA lib pcm.c:8251:(snd_pcm_recover) underrun occurred
libv4l2: error turning on stream: Aucun espace disponible sur le périphérique
ioctl: VIDIOC_STREAMON(int=1): Aucun espace disponible sur le périphérique

S'en suit un Larsen strident, je baisse le son et une fenêtre noir : toujours pas d'image. Le clic droit sur cette fenêtre noir permet d'accéder à une fenêtre de paramétrage. J'ai testé différents paramétrages mais pas d'amélioration.
La capture du son fonctionne bien (je l'avais déjà remarqué sous l'interface de PulseAudio lors de mes essais avec obs).

• Test de cheese :
$ cheese
libv4l2: error turning on stream: Aucun espace disponible sur le périphérique
libv4l2: error turning on stream: Aucun espace disponible sur le périphérique
libv4l2: error setting pixformat: Périphérique ou ressource occupé
(cheese:20393): cheese-WARNING **: Périphérique « /dev/video0 » occupé: gstv4l2object.c(3532): gst_v4l2_object_set_format_full (): /GstCameraBin:camerabin/GstWrapperCameraBinSrc:camera_source/GstBin:bin35/GstV4l2Src:v4l2src1:
Call to S_FMT failed for YU12 @ 640x480: Périphérique ou ressource occupé
L'interface est plus récente et de meilleur qualité, mais là aussi j'ai un écran noir avec le message "Une erreur est intervenue pendant la lecture de la vidéo de la webcam".

• Nouveau test : je change d'entrée USB (j'utilise l'une des entrées de mon écran).
Çà marche !!!
En fait le souci venait de l'entrée USB située en façade de mon PC.
J'avais déjà eut ce type de souci. Elle n'est peut-être pas assez rapide pour le débit nécessaire.

Nouvelle batterie de test :
➥ cheese :
Nickel, l'interface la plus belle et la plus simple. Je teste des effets (assez marrants), puis le plein écran, ce qui finit par faire planter la webcam (image noir avec message d'erreur).
Je relance : l'image s'affiche brièvement puis plante à nouveau. Je remet l'image en 160x120. Rien n'y fait, j'obtiens à chaque fois le même comportement : la led de la webcam clignote 2 secondes, je vois l'image au même moment puis l'écran noir et le message d'erreur ("Une erreur est intervenue pendant la lecture de la vidéo de la webcam"). Zut.

➥ $ vlc v4l2://
À noter qu'il faut parvenir à installer le méta-paquet vlc, sinon çà ne fonctionne pas. Sur ma Debian Sid, dans un premier temps Synaptic ne voulait pas (problème de dépendances) mais en installant vlc-bin et vlc-data il a fini par de lui-même rétrograder de version (génial), puis il a accepté dans un second temps d'installer le méta-paquet vlc (bravo pour les progrès de synaptic !).
Çà marche nickel.

➥ $ xawtv -nodga :
Idem. J'arrive à allumer la lede de la webcam plusieurs secondes (mais écran noir) en lançant les commandes "G" (Grab Image (ppm)) et "J" (Grab Image (jpeg)).

➥ $ mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480
Çà marche, j'ai l'image de manière stable.
Je recopie ci-dessous les messages obtenus en console pour info :

MPlayer 1.3.0 (Debian), built with gcc-6.2.1 (C) 2000-2016 MPlayer Team
do_connect: could not connect to socket
connect: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing tv://.
TV file format detected.
Selected driver: v4l2
name: Video 4 Linux 2 input
author: Martin Olschewski
comment: first try, more to come ;-)
v4l2: your device driver does not support VIDIOC_G_STD ioctl, VIDIOC_G_PARM was used instead.
Selected device: Logitech QuickCam Pro 4000
Capabilities: video capture read/write streaming
supported norms:
inputs: 0 = Camera;
Current input: 0
Current format: YUV420
tv.c: norm_from_string(pal): Bogus norm parameter, setting default.
v4l2: ioctl enum norm failed: Inappropriate ioctl for device
Error: Cannot set norm!
Selected input hasn't got a tuner!
v4l2: ioctl set mute failed: Invalid argument
v4l2: ioctl query control failed: Invalid argument
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
Movie-Aspect is undefined - no prescaling applied.
VO: [vdpau] 640x480 => 640x480 Planar I420
Selected video codec: [rawi420] vfm: raw (RAW I420)
==========================================================================
Audio: no sound
Starting playback...
V: 0.0 360/360 ??% ??% ??,?% 0 0

Re-test de cheese : çà ne marche toujours pas. Bizarre. Il a peut-être écrit un fichier de configuration erroné lors de mes tests d'effets (bouton en bas et à droite de l'interface).

Camorama : il fonctionne bien lui aussi.

Autre test : je rebranche la webcam sur la prise USB précédente en façade et lance camorama : çà ne fonctionne pas.
Autre test : J'inverse le branchement de ma souris (la prise USB située juste à côté, en façade) avec celui de la webcam : la souris fonctionne et la webcam aussi :).
• Nouveau test avec cheese sur ce même port : ne fonctionne pas.
• Nouveau test avec $ xawtv -nodga sur ce même port : fonctionne !
• Nouveau test avec $ mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480 sur ce même port : fonctionne !
L'explication est plus difficile à trouver, mais vraisemblablement que le port en question a soit un problème de débit soit un problème de courant insuffisant.
Votre prise USB est donc à prendre en compte dans vos tests.

Ca en fait au moins 4 (mplayer, camorama, vlc et xawtv) qui fonctionnent de manière fiable et 1 cinquième (cheese) qui a fonctionné mais ne fonctionne plus.
L'image n'est pas exceptionnelle (640x480) mais çà ferait l'affaire.


Essai de fonctionnement de ma webcam sous OBS Studio v. 17.0.0 :

Reste à savoir comment récupérer l'image de ma webcam de manière continue sous OBS. Pour l'instant je n'ai pas trouvé.
Sous l'interface d'OBS, dans la zone "Sources", lorsque je clique sur l'icône "+", je n'ai en effet pas d'option "Video Capture Device" ...

Yeeeessss !!!! J'ai trouvé !
• Cliquez sur l'icône "+"
• Source média / Media Source (si vous avez l'interface en Anglais)
• Créer une nouvelle source / Create new : (saisissez le nom que vous souhaitez, peu importe)
• Cliquez sur "OK"
• Décochez "Fichier local" / "Local File"
• Entrée / Input : /dev/video0
• Format d'entrée / Input format : ne mettez rien
• Cliquez sur "OK", l'image de votre webcam apparaît :)
Enjoy !

Fond d'écran :
• Cliquez sur l'icône "+"
• Sélectionnez : Image
• Donnez-lui un nom
• Cliquez sur "OK"
• Cliquez sur "Browse" et choisissez une image sur votre disque dur (pour la copie d'écran ci-dessus, j'ai pris une copie d'écran du jeu "Parkitect") puis "OK"
• Vous pouvez ensuite l'ajuster à la taille de l'écran (ce que j'ai retenu) ou non, la masquer (cliquez sur l'icône de l'œil près du nom de votre image) ou non.

Restait la capture d'une application :
• Cliquez sur l'icône "+"
• Window : avec le sélecteur choisissez l'application actuellement en fonctionnement que vous souhaitez afficher à l'écran.
J'ai testé avec openra (copie d'écran ci-dessus) : l'affichage marche parfaitement.

Je testerai l'enregistrement ultérieurement. L'idée de ce test était avant tout de vérifier le fonctionnement du matériel.


🕵️ Test (22.0.3+dfsg1-1 des dépôts Debian) par goupildb (config. : Debian Sid 64-bit):

🎯️ Objectif de ce test : rédiger/mettre à jour/valider sa notice d'installation et tester son fonctionnement, et de voir si la version des dépôts Debian fonctionnait bien, car lors de mes derniers tests OBS n'était pas encore en dépôts et les paquets proposés sur d'autres sites ne fonctionnaient pas sous Debian.

Et donc le résultat est : oui, la version des dépôts Debian fonctionne bien.
👏️ ❤️ Un grand bravo et merci à tous.

PS : il faudra que je fasse un peu de ménage ci-dessus, c'est un peu le bordel, mais comme il y a des infos qui m'intéressent encore, je n'ai pas envie de tout supprimer :)