Orlanth

Installer et utiliser un stack AI local (Ollama + Llama3 + Stable Diffusion + Whisper) – Partie 1

Image générée par AI (designer de Ms)

La grande mode du moment, c’est l’AI générative ou LLM pour Large Language Model. Je suis bien sûr très intéressé par ces applications, tant en termes de génération de texte ou d’image pour des usages pro (résumé, mails, génération de modèles, programmation) et persos (jeu de rôle). Pour cela, on peut utiliser les classiques et plus connus Midjourney ou ChatGPT ou se tourner vers l’open-source et ses bienfaits. Cet article se base principalement sur une vidéo de NetworkChuck que je vous invite à visionner (en anglais), et à diverses informations rassemblées sur le net.

Petit disclaimer : je suis parfaitement conscient de l’impact que ces technologies peuvent avoir sur les métiers de création, illustrateurs, traducteurs, ou autres. Je sais aussi comment sont nourris les modèles de données, la plupart du temps sans considération ni rémunérations pour les auteurs (dont je suis parfois), et c’est un problème grave dont il faut s’occuper dès maintenant. Je n’encourage pas le commerce de produits générés par IA, livres ou images. Je ferai peut-être ultérieurement un article plus complet sur mon positionnement.


Matériel

Contrairement à ce que dit la vidéo de NetworkChuck, pas besoin d’une machine de guerre à base de double RTX 4090 et je ne sais combien de RAM. Vous aurez des résultats parfaitement satisfaisants avec une machine relativement récente. Par contre, une carte graphique Nvidia me semble obligatoire. C’est elle qui fera les calculs, et plus elle sera puissante, plus les retours seront rapides. Le système peut toutefois tourner sur CPU uniquement.

Personnellement j’ai une RTX 4070 12 Go, mais une génération précédente fera parfaitement l’affaire. Idem, n’importe quel processeur un peu récent ira bien.

Par contre, si vous ne disposez que d’un laptop ou un minipc, je ne garantis pas le résultat.

WSL

La plupart des programmes et commandes fonctionnent sur tous les systèmes, mais je trouve que le plus simple c’est Wsl, la version Windows de Linux.

On commence par l’activer en lançant la commande suivante dans le terminal de Windows.

wsl --install

Ca ne prend que quelques minutes.

Si vous utilisez le Terminal de Windows, vous aurez automatiquement une nouvelle entrée.

Cliquez dessus pour ouvrir une session Ubuntu.

Il vous demandera un nom d’utilisateur et un mot de passe, puis vous aurez accès à la ligne de commande.

Ubuntu + Docker

Commencez par mettre à jour Ubuntu avec les commandes suivantes :

sudo apt update && sudo apt upgrade

Puis installez Docker

sudo apt install docker.io

Tout est prêt !

Ollama

Ollama est un outil permettant de télécharger et d’utiliser n’importe quel modèle de données disponibles en open-source (et gratuitement) sur le site de Huggin Face, la principale communauté AI. C’est un serveur qui tourne en arrière-plan et qui peut être utilisé en ligne de commande ou via une interface Web qu’on installera juste après.

Pour l’installer, tapez la commande suivante :

curl -fsSL https://ollama.com/install.sh | sh

Au bout de quelques minutes, vous aurez accès à l’application.

Téléchargez un modèle, je suggère le plus puissant du moment, avec un excellent rapport taille/qualité, Llama3

ollama pull llama3

Attention, c’est un fichier de 5Go, la vitesse dépend de la qualité de votre ligne.

Pour tester :

ollama run llama3

Yeah \o/

OpenWeb UI

C’est un logiciel qui donne une interface graphique à Ollama, ressemblant fortement à celle de ChatGPT ou you.com. On peut télécharger des modèles, discuter avec eux, uploader des fichiers pour les interroger et faire plein de choses cools.

Pour l’installer (toujours dans notre session Ubuntu)

docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

La commande peut faire peur, mais elle dit juste que l’application doit tourner dans docker, que l’image s’appelle open-webui et que le serveur ollama tourne en local. Rien de foufou ou de dangereux.

Comme pour les précédentes commandes, il va télécharger ses fichiers et tout lancer tout seul.

Pour savoir si cela fonctionne, lancer votre navigateur préféré et faites le pointer sur :

http://localhost:8080

Dans le menu du haut, vous pouvez choisir vote modèle (llama3).

Dans le chat du bas, vous pouvez taper votre question ou demande pour commencer à l’utiliser.

Vous pouvez aussi cliquer sur le petit + en bas à gauche pour envoyer un fichier pour l’interroger. Ça marche avec du texte, mais par la suite, on pourra envoyer une image pour lui faire décrire un prompt qu’on enverra ensuite dans Stable Diffusion.

Le micro permet d’envoyer du son qui sera analysé par Whisper et transformé en texte.

Enfin, les résultats peuvent être lus par une voix synthétique en un clic, je vous montre ça après.

Conclusion de la partie 1

En quelques commandes, on a installé un système complet, accessible facilement, quasiment aussi puissant que le dernier ChatGPT. Si un modèle plus puissant sort en open-source, il sera rendu disponible dans l’application en une commande (ou quelques clics dans l’interface).

Dans la partie 2, nous installerons les autres outils et nous verrons comment les utiliser et les faire échanger entre eux.

Installer windows 11 sur un dell XPS 13 9315

J’ai un laptop dell de ce modèle qui a été préinstallé avec plein de crapware. J’ai pas mal de souci avec et j’ai décidé de tout réinstaller. Cet article est là pour m’aider le jour où je voudrais le refaire.

BIOS / Driver disque dur

Par défaut le disque dur n’est pas visible par l’installateur de Windows, même dans sa version 11. Il est possible pendant l’installation d’utiliser les drivers trouvables sur le site du support de Dell si on les a mis sur la clé USB d’installation. Cela dit, si le système voit que le disque principal n’est pas le premier (0) alors il refusera de s’installer.

Une astuce est de passer dans le Bios pour changer la manière dont le disque est géré, pour passer de RST (une espère de Raid dont je ne comprends pas bien l’interêt) à AHCI/NVME.

Une fois relancé, l’installeur de Windows retrouve sans problème ses petits et accepte de s’installer.

Pour accéder au Bios => F12 pendant le démarrage pour accéder aux options de boot puis il y a un lien vers le bios lui-même. Il faut aller dans Stockage, puis cliquer sur AHCI/NVME.

Rebooter, F12 de nouveau, puis booter sur la clé USB d’installation.

Astuce : decrap

Windows installe des tas de crapwares par défaut, notamment des pubs, des liens vers des applis ou des jeux. Cette action est dépendante de l’endroit choisi lors de l’installation.

Pour réduire ces installations malvenues, il faut indiquer à l’installeur la région : « Anglais (International) ».

De là, il va continuer, puis mettre un message d’erreur.

Il faut cliquer sur Ignorer puis terminer l’installation normalement.

Astuce : Compte local

Windows 11 nous fait bien galérer et tente de nous obliger à se connecter avec un compte MS.

Pour éivter cela, il faut débrancher son câble éthernet, ou couper la connexion Wifi si elle est active, puis cliquer sur : « Je n’ai pas internet » et « Continuer avec un compte limité ».

Installer les drivers d’une clé Wifi TP-Link Archer T3U sous Debian 12

J’ai récupéré récemment un vieux HP ProDesk 400 G3, un mini PC format 1L anciennement utilisé comme machine de bureau. Après l’avoir un peu boosté avec de la RAM (passage à 16Go), j’ai fait quelques tests dessus, et s’il est difficilement utilisable en mode bureau (processeur faiblard, disque dur mécanique), il est beaucoup plus intéressant en mode serveur. Voulant le mettre dans un coin avec le moins de câble possible, j’ai voulu y coller ma clé Wifi Archer T3U, évidemment sans driver Linux. Ma procédure précédente ne fonctionnant pas, j’ai de nouveau cherché et trouvé une solution pour la faire fonctionner, le tout en ligne de commande, sous le très récent Débian 12.


Installation Debian 12

J’ai installé une Debian 12 toute fraiche en téléchargeant un ISO netinstall. Pas d’interface graphique, juste un serveur SSH et basta.

Comme précédemment, le driver sera compilé à partir d’un dépôt git. Donc j’installe tous mes outils, git, sudo (non installé par défaut dans debian), module-assistant, lshw (pour vérifier le matériel). La compilation m’ayant fait une erreur, j’ai dû aussi installer le paquet dkms.

Je vérifie avec un lsusb que la clé est bien reconnue par la machine.

Elle apparait bien, première étape ok.

Compilation du module

Ensuite récupération du code puis compilation et installation. Source de la méthode.

sudo m-a prepare
git clone https://github.com/RinCat/RTL88x2BU-Linux-Driver
cd RTL88x2BU-Linux-Driver
make
sudo make install
sudo modprobe 88x2bu

Pour vérifier que le matériel est maintenant correctement piloté, j’utilise la commande lshw

La commande ip link show donne aussi un bon résultat.

Je note le nom de l’interface (wlxd03745a8f9ca) pour la suite.

Configuration du réseau

Source de la méthode

J’ai choisi d’utiliser l’outil iwd qui me semble très simple à mettre en place.

J’installe le paquet iwd puis j’ouvre le fichier de configuration pour décommenter la ligne permettant à iwd de configurer automatiquement le réseau (EnableNetworkConfiguration).

Il faut maintenant lancer le service iwd et l’activer pour que le wifi survive à un redémarrage.

systemctl --now enable iwd

Accéder au wifi

J’utilise la commande iwctl en mode interactif et en utilisateur.

iwctl

La commande help permet de voir toutes les instructions possible.

Pour ma part :

station wlxd03745a8f9ca scan
station wlxd03745a8f9ca get-networks
station wlxd03745a8f9ca connect <réseau>

Il va demander le mot de passe du réseau. Puis, vous pouvez sortir avec exit.

La commande : ip a, vous permet de voir si l’interface a bien récupéré une adresse ip en DHCP.

Pour un serveur, il est plus pratique d’utiliser des adresses ip statiques, mais je préfère les gérer de manière centralisée sur mon DHCP en définissant un bail statique.

Conclusion

La méthode me paraît beaucoup plus simple à mettre en place, surtout dans un contexte sans interface graphique et j’avoue avoir fait une bonne découverte avec iwd qui gère très facilement le réseau en cli.

Si vous n’arrivez pas à vous connecter après la procédure, ou si vous n’avez pas récupéré d’ip, essayez de relancer le service (sudo systemctl restart iwd) ou de redémarrer la machine (ce que j’ai dû faire).

Retour d’expérience sur Critical, part ouane.

Il y a quelques semaines, j’achetais Critical, un jeu d’initiation à destination des débutants. Depuis, j’ai fait jouer les quatre premiers scénarios, en deux séances d’un peu plus d’une heure.


Première séance

La première séance s’est plutôt bien déroulée. Il s’agit de deux combats assez brutaux, avec un peu de contexte pour expliquer comment on en arrive là, mais c’est tout. Y’a un côté super gonzo du jdr où on vire tout ce qui n’est pas directement le cœur de la partie. Là, c’était baston, alors tout mène très rapidement à la baston.

Le système est extrêmement facile et rapide à prendre en main, et les combats sont justement très expéditifs. Les personnages ont deux points de vie, donc peuvent encaisser deux coups d’une arme de base type pistolet, et un seul d’une arme de guerre type fusil d’assaut. D’ailleurs, il n’y a que deux armes (+ une spéciale qui intervient plus tard dans la campagne). Il y a aussi peu de possibilités d’éviter les dégâts, à part pour le perso du soldat qui dispose d’un équipement adéquat lui permettant de rester debout un peu plus longtemps.

Toutes les scènes d’action sont limitées en temps. Un compteur, généralement positionné à trois tours, permet de se concentrer sur le principal. Encore une fois, efficacité avant tout. Si à la fin des trois tours, les personnages n’ont pas réussi, le dénouement est un poil différent mais la scène s’arrête là.

Il n’est pas possible non plus de mourir. Un personnage suffisamment blessé s’effondre et joue le reste du scénario avec des malus, c’est tout.


Seconde séance

À l’inverse de la première séance, tout en action, la seconde séance et donc les deux scénarios suivants mettent l’accent sur l’enquête. Les indices étant matérialisés physiquement par des cartes ou des morceaux de cartons représentant les objets acquis. Il y a quelques astuces à la Unlock, et les joueurs sont invités à bien observer ce qu’ils ont sous la main et interroger le maître de jeu sur ces éléments pour comprendre l’histoire.

Il y a des indices obligatoires pour comprendre le fil de l’histoire et avancer et un certain nombre d’indices supplémentaires ouvrant de nouvelles pistes et questions.

Une fois encore, les scénarios sont ultra-linéaires. Le Mj lit la situation et le traditionnel « Que faites-vous ? » intervient très tard dans la description de la scène. Du coup, les joueurs n’ont aucune autre possibilité que de faire ce qu’on leur dit et d’évoluer dans une bulle de gameplay beaucoup plus serrée par rapport aux autres jeux. Dans le cadre de l’enquête, finalement, cela consiste simplement pour les joueurs à dire qu’ils essaient d’en savoir plus sur tel ou tel élément repéré précédemment. Je le ressens un peu comme une désincarnation des personnages. Si l’immersion est renforcée par la qualité des illustrations et des aides de jeu, le fait de ne faire que ce qu’on vous demande et surtout pas autre chose me sortirait un peu de l’univers si je devais passer de l’autre côté de l’écran.


Conclusion

Pour l’instant, je suis mitigé. En tant que Mj, je passe une dizaine de minutes à préparer la séance, en allant chercher les cartes, indices et pions nécessaires, puis je lis ce qu’on me dit de lire, dans l’ordre.

Je ne me trouve pas super impliqué, et je suis à deux doigts de penser qu’on pourrait tout à fait utiliser une application sur son téléphone pour remplacer ce rôle traditionnel.

Côté joueurs, les miens n’étant pas complètement débutants, s’ils n’ont pas l’air de s’ennuyer, ils ne sont pas pour autant super actif, n’étant pas vraiment très sollicités.

L’expérience est clairement différente de tout ce que j’ai pu jouer depuis mes débuts. Ce jeu est construit comme un train fantôme (terme emprunté aux jeux vidéos). Ils sont dans une voiture qui va tout droit et il y a des trucs qui se passent autour d’eux sans qu’ils puissent réellement faire autre chose que ce qu’on attend d’eux.

Je reste sur ce que j’avais dit dans la critique de mon précédent article, cela fonctionnera super bien avec des débutants complets, mais avec des gens qui ont déjà une demi-douzaine de parties, j’ai peur que cela les renvoie à une position un poil trop passive.

Critique de Critical Saison 1

J’ai découvert Critical un peu par hasard, dans une boutique de jeu de société et pas vraiment de jeu de rôle, entre Unlock et le dernier set de carte Magic. C’est en croyant avoir à faire à un énième escape game que j’ai attrapé la très belle boite et m’apercevoir qu’il s’agissait d’un jeu de rôle complet, axé initiation et comportant du matériel comme pour un jeu de plateau. Tombant pile-poil dans mes obsessions du moment, j’achète le jeu et décide d’en faire une critique.


Déballage

La première impression est très bonne. La boite respire la classe, et je me retrouve comme un gamin découvrant l’œil noir, édition Gallimard, pour la première fois. Un carton d’excellente qualité, quatre feuilles de personnages permettant pour chacun de choisir son genre (hey, vazy je l’avais déjà fait là !), des petits cartons pour l’équipement et les indices, et de plus gros pour les illustrations, que je trouve très jolies et très immersives. Le jeu se complète d’un livret de règles, de quelques dés spéciaux, et de huit scénarios tenants chacun sur une feuille A4.

L’écran en quatre volets contient les règles complètes du jeu et dispose de deux encarts en plastique permettant de placer des cartes d’illustrations ou de personnages-non-joueurs à la vue de tous. C’est très astucieux.

La présentation me plait beaucoup, pour la raison que je suis personnellement convaincu que ce genre de format est très ludique pour des débutants, permettant de s’approprier physiquement les différents éléments pour améliorer l’immersion. C’est ce que je fais déjà beaucoup avec YxY et ses différentes versions, et voir une version aboutie me conforte dans mes idées.

Les règles

Rédaction

En gardant à l’esprit que les règles se doivent d’être simple et prévue pour l’initiation, j’ai trouvé qu’elle manquait un peu de fluidité. J’ai dû regarder à plusieurs endroits et essayer de comprendre ce qu’était exactement des “réussites”. Dans d’autres jeux, on dit qu’on a une réussite lorsqu’un dé donne un certain résultat et on peut obtenir plusieurs réussites lorsque plusieurs dés lancés simultanément obtiennent chacun individuellement le score demandé. Là, il a fallu que je me rende compte que les d12 fournis n’étaient pas des dés ordinaires et que les chiffres inscrits n’étaient pas linéaires. Donc si le d12 donne un résultat de 2, on a 2 réussites. Ce n’est qu’un simple problème de sémantique, mais qui m’a un peu perdu.

De manière similaire, les informations ne sont pas répétées et il y a peu de renvoi indiquant où trouver l’information. C’est une fois l’intégralité du jeu lu qu’on a la vision complète, on ne peut pas vraiment démarrer rapidement. Ce n’est pas un réel problème, et c’est sans doute lié à une de mes habitudes que de survoler et de récupérer les informations dont j’ai besoin au moment où elles se révèlent nécessaires. Là ce ne sera pas possible.

Dés

Concernant le cœur des règles, c’est très simple. Lorsqu’un test est demandé, le joueur lance 1d12 et ajoute la valeur d’une caractéristique parmi quatre, et 1 réussite supplémentaire s’il dispose d’une compétence appropriée. Si on dépasse ou égale la difficulté, l’action est réussie, sinon elle échoue. Les jets à demander et les résultats en cas de réussite ou d’échec sont systématiquement indiqués dans les scénarios, permettant au maître de jeu débutant d’être guidé et de mieux comprendre cette partie de la maîtrise.

Combat

Les combats sont triviaux et durent généralement deux ou trois tours de jeu au maximum. Les personnages ont deux points de vie, ce qui leur permet d’encaisser un ou deux coups avant de s’effondrer. Il n’y a pas de règle sur la mort, les personnages échouant à un combat étant systématiquement sauvés, mais devant jouer le scenario suivant avec divers malus.

Les personnages

Les quatre personnages proposés sont extrêmement génériques et, à mon humble avis, n’ont pas trop de personnalité. Ce qui est sans doute fait exprès et permet à des débutants de ne pas avoir à s’inquiéter de jouer différemment d’eux-mêmes. Un peu comme les personnages de jeu vidéo qui ne parlent pas et permettent ainsi au joueur de s’immerger et de “s’y croire”.

Pour la joueuse, créer un personnage est simplissime, elle choisit une feuille parmi les quatre, la pose du côté qu’elle le souhaite, homme ou femme et c’est tout pour la première partie. C’est à la seconde partie qu’il faudra choisir un historique parmi deux, ce dernier ajoutant quelques compétences, et ajouter un équipement spécifique unique pré-déterminé.

Les scénarios et l’histoire globale

Il y a 9 scénarios, si on inclue l’introduction, chacun étant prévu pour durer 30 minutes. Ils sont tous décrits de la même façon par un petit paragraphe de synopsis donnant les enjeux du scénario puis trois scènes et enfin un épilogue. Chacun d’entre eux précise exactement les équipements à utiliser, les indices à trouver, les illustrations à montrer, et pour chaque scène ce qu’il y a à dire et les jets de dés à demander. C’est très linéaire, et probablement très adapté à des maîtres de jeu débutants.

L’histoire n’est pas très complexe et pioche allègrement dans les théories du complot et la technologie futuriste.

Le début est principalement constitué de combat, mais après cela varie avec de l’enquête (avec une petite astuce graphique rigolote à un moment, mais chut), du social, de l’exploration puis un gros combat final parce que hein bon. Bref du classique éprouvé mille fois. Cela dit l’ambiance me fait penser à l’ancienne campagne du Réseau Divin parue dans Casus belli de la première époque et qui était déjà proposé dans un format par épisode très court dans le même genre. Je suis sûr que le jeu est parfaitement adaptable à cette campagne.

Pour moi, la fin est trop précipitée et les deux derniers scénarios aurait mérité d’être chacun découpé en deux ou trois pour éviter l’effet tunnel de certains jeux vidéos ou après un certain point, on est embarqué jusqu’à la fin sans possibilité d’en sortir. Et le combat final est posé comme un cheveu dans la soupe. J’aurais voulu que son approche soit un peu différente. Ça m’a un peu fait l’effet des combats de boss de Deus Ex Mankind pour ceux qui ont la ref. Pour les autres, dans un jeu qui fait la part belle au choix dans les approches, lorsqu’un boss arrive, c’est bourrinage sans réflexion, ce qui contraste fortement avec la proposition initiale. Ben là, j’ai trouvé que c’était un peu pareil.

Conclusion

Je trouve que le concept est parfaitement respecté. Les premiers épisodes guident bien le maître de jeu débutant, et les joueuses n’ont de leur côté quasiment rien à faire qu’à se laisser porter. Le système est très simple, mais encore un poil compliqué, surtout dans son écriture. J’aurais bien aimé apprendre les règles en jouant le premier scénario (mais je suis biaisé, c’est ce que j’ai fait pour le scénario d’initiation d’YxY).

Le format est clair, concis, les illustrations sont jolies et immersives. Ne manque que quelques conseils d’ambiances musicales au début de chaque épisode et cela aurait été parfait.

Comme dans une série TV, si l’histoire est simple, le développement final laisse entrevoir une suite intéressante que j’ai hâte de découvrir.

Enfin, le prix de 32 € me parait adapté pour un matériel de qualité et trois ou quatre séances de jeu si on enchaîne les épisodes.

Récupérer les membres d’une liste de distribution Microsoft 365

Dans mon nouveau boulot, en attendant un recrutement spécifique, je me retrouve à faire de l’administration système, notamment sur Microsoft 365. L’outil est extrêmement efficace en entreprise et permet un travail collaboratif très étendu. Cela dit, les outils d’admin sont une plaie absolue, ou rien n’est cohérent. Si pour les utilisateurs, le boulot est fait, en arrière-plan c’est un enfer. Par exemple, il n’y aucune option nulle part pour récupérer simplement les membres d’une liste de distribution. Sauf en powershell…


Installation des outils

  • On ouvre évidemment un terminal Powershell en mode administrateur.
    À chaque fois qu’il demande une validation, vous dites Oui [O] bien sûr, sinon ça marche pas.

Install-Module PowershellGet -Force
Install-Module -Name ExchangeOnlineManagement

  • On active l’exécution des scripts qui n’est pas possible par défaut.

Set-ExecutionPolicy RemoteSigned

  • On importe le module Exchange.

Import-Module ExchangeOnlineManagement

  • Enfin, on se connecte

Connect-ExchangeOnline

Là ça ouvre une page web où vous pouvez mettre votre login et mot de passe.
C’est possible uniquement si vous êtes admin hein.
Si ça marche, vous allez tomber sur ça :

Action

Maintenant c’est tout con :

Get-DistributionGroupMember -Identity « <le nom de la liste » | Select-Object -Property « DisplayName », »PrimarySmtpAddress » | Export-Csv c:\liste.csv

Le GetDistributionGroupMember fait ce qu’il dit, il récupère l’intégralité des membres, avec toutes leurs informations.

Le Select-Objet permet de réduire les champs à uniquement le nom et l’adresse. Faite un test sans cette commande, puis ouvrez le fichier généré pour voir la liste des champs. Y’en a plein.

Enfin, l’Export-Csv balance l’ensemble dans un fichier ouvrable par n’importe quel tableur.

Conclusion

Ce n’est pas très compliqué, mais ce n’est pas pratique. Il doit probablement y avoir des outils qui lancent ces commandes en arrière-plan, des trucs qui ne viennent pas de MS, mais je ne les connais pas. Si vous avez des connaissances dans ce sujet, je serai ravi de les connaitre.

Café-rôliste S02E04 avec Wilhem Horn

Aujourd’hui, nous buvons du thé avec Wilhem Horn, créateur, notamment, de la fiction audio star wars Les Chroniques Galactiques.

Nous parlons évidemment de fictions audio, de ses projets en cours, de métal (la musique), de son rapport au jeu de rôle et à la création et même de dessins animés des années 80.

N’oubliez pas, si vous aimez, n’hésitez pas à partager, et si vous n’aimez pas, n’hésitez pas à partager aussi.


Les liens

Naheulbeuk

Deadlands

Shadowrun

Vampire

François TJP

Mastodon

Clément Viktorovitch

Captain popcorn – Jdr

Mireille Dumas

Noosphere

Geekmag

Gloryhammer

Fear factory

Marylin Manson (Bowling for colombine)

Duke Nukem Forever (Musique Megadeth)

Quake 2 musique Rob Zombie

Okilly Dokilly

BraveStarr

Diffuser un flux vidéo avec OBS vers un serveur RTMP privé pour diffusion sur une TV connectée

Je regarde très peu la télévision, préférant de loin utiliser les services de streaming comme Netflix ou parfois Amazon Prime, ainsi que quelques vidéos de vacances. Lorsque je regarde une émission, j’utilise Molotov qui, dans sa version gratuite, ne permet pas de regarder TF1 ou M6. Ce qui n’est pas un mal de toute façon. Mais hier je voulais regarder une émission sur TF1. Je souhaitais la regarder sur mon grand écran alors je me suis servi de ce prétexte pour monter l’infrastructure que je m’apprête à décrire.


Setup initial

Mon installation initiale comprend les éléments suivants.
Il est possible de mutualiser certaines fonctions.

Hardware

  • Une TV connectée possédant l’application VLC (ou tout autre appli permettant de lire un flux réseau RTMP). J’utilise une Nvidia Shield (un boitier Android TV).
  • Un PC sous Windows pour récupérer le flux de TF1 via Captvty.
  • Un serveur Linux (mon miniPc Mele Quieter qui me sert à tout).

Software

Captvty

C’est un logiciel, uniquement sous Windows même si certains hacks permettent de le lancer sous d’autres systèmes, qui permet de lister l’intégralité des émissions accessibles en replay sur la plupart des chaînes françaises.

Il permet aussi, en faisant un clic droit sur le nom d’une chaîne, de la regarder en direct.

Captvty me servira ici de source de flux vidéo, mais on pourrait utiliser n’importe quoi.

OBS

C’est le logiciel de streaming le plus populaire actuellement. C’est une sorte de banc de montage qui permet de préparer des scènes à diffuser par exemple sur Twitch.tv ou Youtube. On peut récupérer des flux vidéos, des images fixes, des overlays, mixer l’ensemble, ajouter des filtres, bref, c’est très puissant.

Nginx-RTMP

Nginx est un serveur Linux ultra léger, très facile à installer et à configurer, qui peut servir des pages Web, faire reverse proxy et qui dispose dans notre cas d’un module RTMP trivial à configurer.

Je l’ai installé sur mon boitier, mais je suppose qu’on peut aussi faire une machine virtuelle légère (genre un truc sous Alpine), un docker ou même passer par le WSL de Windows. Je n’ai pas encore testé ces solutions.

Mise en place

Nginx-RTMP

Personnellement je suis sous Ubuntu, il faut adapter les commandes d’installation si vous possédez une autre distribution.

Installation

Ouvrir un terminal puis :

  • sudo apt update
  • sudo apt install libnginx-mod-rtmp

Configuration

Toujours dans le terminal

  • sudo nano /etc/nginx/nginx.conf

Ajouter le bloc suivant à la fin du fichier :

rtmp {
        server {
                listen 1935;
                chunk_size 4096;

                application live {
                        live on;
                        record off;
                }
        }
}

Quitter (CTRL+X) en sauvegardant (Y).

Relancer le serveur

  • sudo systemctl restart nginx

C’est vraiment la config minimale, il n’y a pas de sécurité, pas de transcodage, le flux est transmis tel quel.

! Attention ! Ayant déjà un serveur web sur ce boitier, il a fallu que je change les ports d’écoute de nginx pour autre chose que le 80 qui était déjà pris. Sinon le service refuse de se lancer.

Captvty

  • Télécharger et décompresser le logiciel quelque part, par exemple sur le bureau.
  • Lancer l’exécutable captvty.exe
  • Faire un clic droit sur la chaîne TV puis Visionner <chaine> en direct

Si tout se passe bien, une fenêtre s’ouvre et diffuse un flux vidéo.

OBS

Installation

  • Installer et décompresser OBS quelque part, par exemple le bureau
  • Lancer l’exécutable obs64.exe

Configuration

  • Dans les sources, ajouter Capture d’une fenêtre et Audio du bureau
  • Dans les paramètres de la capture de fenêtre, sélectionner la fenêtre qui diffuse la chaîne.
  • Enfin, dans les paramètres de Flux d’OBS,
    • choisir Personnalisé
    • Indiquer l’adresse du serveur RTMP
    • Choisir une clé (j’ai mis test)
  • Enfin, lancer le stream

Si OBs ne dit rien, c’est que le flux est diffusé.

Reception

Depuis un ordinateur branché sur le réseau, depuis un téléphone (s’il dispose de VLC), ou directement depuis la TV :

  • Lancer VLC
  • Ouvrir un flux réseau
  • Indiquer l’adresse du serveur RTMP sous la forme
    • rtmp://<adresse ip>/live/test

live, c’est le nom du service RTMP (indiqué dans le fichier de configuration Nginx).
test, c’est la clé de stream indiquée dans OBS.

Si tout s’est bien déroulé, vous devriez voir votre flux apparaître.

Conclusion

Il y a quelques étapes à réaliser, mais l’ensemble n’est pas si compliqué à mettre en place de mon point de vue. OBS étant capable de prendre à peu près n’importe quoi en entrée, rien n’empêche par exemple de diffuser une webcam, un ensemble de caméra de sécurité, des panneaux d’affichage ou un diaporama de photos ou de la publicité par exemple. OBS permet de gérer des scènes, mais aussi des transitions pour passer joliment d’une scène à l’autre. Chaque scène étant indépendante, il est possible de produire du contenu différent pour chacune.

Tout l’intérêt de ce mini-projet a été pour moi de comprendre comment mettre en place le serveur RTMP privé, et si on s’en tient à la base, cela a été très simple. Bien sûr, pour une utilisation en entreprise, ou dans le public, il faudra ajouter des couches de sécurité, mais cela dépasse le cadre de cet article.

Retour et avis sur Notion

Depuis quelques mois, j’utilise un outil de productivité appelé Notion. Plus qu’un simple bloc-note, Notion est extrêmement puissant et modulable. Petit retour sur ce que c’est, ses qualités et défauts, et la manière dont je l’utilise.


Notion | Notre Avis sur ce Logiciel de Gestion de Projet en 2022

Introduction

Notion est, en gros, un bloc-note sous stéroïde. Le principe de base est qu’on peut y créer des pages dans lesquelles l’utilisateur peut écrire en mode bloc (un peu comme dans un wordpress mais infiniment mieux foutu) et faire des mises en pages variées et colorées, relier les pages entre elles, faire des menus, des titres, des boutons pour faire apparaitre ou disparaitre des blocs de texte et bien d’autres choses.

Ce qui différencie Notion d’un bloc note tout bête sont, notamment, les points suivants.

Fonctionnalités

Intégration

On peut intégrer à peu près tout dans une page, du texte et des images évidemment, mais aussi des TAS d’autres outils. Du PDF lisible directement, des maps google, pour le plus trivial, mais il y a des dizaines et des dizaines d’outils. Je peux faire des graphiques avec Mermaid, je peux mettre du code dans je ne sais plus combien de langage, bref la page est organisée et comprend tout ce que tu veux. Tu peux ajouter des logos, des bannières, des émojis, faire des colonnes de taille diverses, mettre des pièces jointes, insérer des équations etc.

Il y a des raccourcis pour tout. Il comprend nativement le markdown. Par exemple, pour créer un titre 1, tu tapes # puis espace et paf tu as un titre. ## et voilà un titre 2. Pour une liste, c’est une étoile *. Je ne vais pas faire un cours de markdown ici, tu as compris. Le / permet d’accéder tout le temps à tous les raccourcis.
Étrangement, tu es limité par les couleurs un peu trop pastels à mon goût, et par les polices de caractères au nombre de 3 pour le moment.

Un exemple d’une de mes pages pour un scénario d’YxY

Base de donnée

Là, on touche le sublime. C’est la feature killer de Notion.
Tu peux créer des tables de bdd où tu veux. Chaque entrée est une page que tu peux modifier et relier à n’importe quoi d’autres. Tu peux créer des tris, des groupes et des filtres et surtout des vues que tu peux intégrer n’importe où. Tu peux les organiser en tableaux kanban, des listes, des calendriers, des timelines ou des cartes. Si tu mets des images, tu peux les faire apparaitre dans tes cartes pour que ce soit plus joli.

Exemple de base de donnée, affiché en galerie

Travail collaboratif

Le travail collaboratif est très développé. Au plus simple, tu peux partager tes pages avec qui tu veux, recueillir des commentaires ou, en allant plus loin, créer des pages ensemble, les partager à des sous-ensembles de gens, bref bosser en équipe sur une base documentaire.

C’est super, mais tu fais quoi avec ça ?

Le reste

Je ne détaille pas, mais il y a beaucoup d’autres fonctions. On peut faire des modèles de pages, on peut récupérer en un clic les modèles d’autres utilisateurs. C’est utilisable sur le web et sur téléphone. L’API est ouverte, on peut donc automatiser des accès, avec Zapier par exemple.

Cas d’usage

Eh bien absolument ce que tu veux. C’est un avantage et un inconvénient. J’ai passé les dernières semaines à regarder des tas de vidéos, pour apprendre à m’en servir, mais aussi pour voir comment les autres s’en servent.

À part en pur bloc-note ou liste de course, voici mes trois usages principaux

Gestion de projets

Pour cela je me sers de trois tables de base de données. Une table Contact dans laquelle je mets tous mes contacts pro ou perso, avec leurs coordonnées et des notes à leur sujet. Une table Projet avec la liste des projets, reliées aux Intervenants (qui sont donc des Contacts) et aux Tâches qui est ma troisième table dans laquelle je décris chaque tâche avec une date de réalisation, une priorité, des Intervenants et autres.
Ces tables sont reliées entre elles via des relations (en deux clics c’est fait) et j’ai plein de vues que j’affiche à différents endroits de mon espace de travail, à chaque fois avec des filtres différents.

Par exemple, ma table Projet contient mes projets pro et perso. Mais je fais un filtre perso pour l’afficher dans mon sous ensemble de page Perso. Idem pour le pro. C’est la même table, mais affichée différemment selon l’endroit.

Jeu de rôle

J’écris principalement YxY avec Notion. Idem, il y a de la gestion de projet, des tests, des idées, des compte-rendus de parties, des scénarios, des listes de Pnjs (sous forme de base de données, que je replace après ailleurs).

Une communauté pour YxY

Suivi des habitudes

Je viens de démarrer une petite base de données pour suivre mon fonctionnement, mon poids, mes habitudes de la journée, et me motiver à m’améliorer chaque jour. Manger sainement, gérer correctement mon sommeil, lire plus etc. Pour cela, quelques vues et modèles me permettent de suivre mon évolution chaque jour et chaque semaine.

Suivi de mes habitude

Défauts

Il y a tout de même des défauts.

Il n’y a pas de mode hors-ligne. De plus, le logiciel n’est pas open-source ni auto-hébergeable. Il y a des projets tiers en ce sens, mais pour l’instant considèrent que tes données ne t’appartiennent pas, que la société peut couler, qu’on peut tout te voler etc.
Classique, mais il faut le dire.

J’aimerais plus de personnalisation, plus de couleurs, plus de police de caractère, une meilleure gestion des colonnes (qui est déjà très bien, mais peut être améliorée). Je voudrais pouvoir encore mieux gérer les bases de données, faire des calculs et des extracts !

C’est déjà tellement génial que maintenant j’en veux plus ! PLUS !!

Conclusion

Je ne l’ai pas dit, mais la version gratuite permet tout ce que je viens de dire. Payer permet de travailler en collaboratif plus facilement, d’augmenter la taille des fichiers que tu peux importer et quelques autres trucs qui ne m’intéresse pas pour le moment.

Notion est un outil extraordinaire, exactement ce dont j’ai toujours rêvé, le remplacement de mes vieux TiddlyWiki.

Il n’est pas parfait, loin de là, et surtout il ne te guide pas. Si tu es désorganisé, tu va simplement reproduire ce mode de fonctionnement et cela ne t’aidera pas. Profites-en pour t’améliorer, comprendre comment tu peux mieux t’organiser, piquer des idées chez les autres.

Liens

Voici quelques liens vers les ressources Youtube qui m’ont beaucoup aidé.

La chaine de Shubham Sharma, un youtubeur français fan de productivité et de Notion.
Red Gregory, idem, mais en anglais, plus axé cours. Les vidéos sont plus longues et iel rentre plus dans les détails.
Thomas Frank, similaire à Red Gregory, mais en beaucoup plus pro et sur des points plus précis.

Les trois sont complémentaires, et il y a bien d’autres ressources, en vidéos ou en site web.

Café-rôliste S02E03 avec Dragan Ristic

Pour ce nouvel épisode, je reçois Dragan Ristic, actuellement membre de la FFJDR, en charge d’un projet d’envergure pour notre loisir et auteur du jeu de rôle le Fil d’Argent.

Nous parlons principalement de son jeu et de son travail à la FFJDR mais pas que.

N’hésitez pas à commenter et à partager si vous avez apprécié.



Liens

Dorothée Girot, Actrice : https://www.facebook.com/dorothee.girot

CNL : Centre national du livre

Alexandre Astier

Café-rôliste avec David Robert

Café-rôliste avec Sybille Marchetto

Sophie Briand : présidente de la ffjdr

Code Quantum

Continuum

Virtual Revolution

Bimbo

Time stories

Bureau of investigation

In Nomine Satanis

Initiative Roliste