Enregistrer le terminal Linux en vidéo avec TermRecord
Sommaire
I. Présentation de TermRecord
TermRecord est un outil très pratique écrit en Python. Celui-ci va en effet vous permettre d’enregistrer une session terminal Linux pour en faire directement une vidéo qui pourra être visionnée plus tard. Cela est particulièrement intéressant lorsque l'on cherche à faire une démonstration, une documentation ou même un tutoriel ! Nous allons dans ce billet voir comment installer et utiliser TermRecord et également comment l'associer à la commande Linux "script" que je vais présenter un peu plus bas.
II. Installation de TermRecord
L'installation de TermRecord nécessite quelques librairies Python. Sous les machines Debian, python est nativement présent mais il faut y ajouter quelques paquets, on utilisera pour cela la commande suivante :
apt-get install python-pip
Python pip est simplement un ensemble de librairies dont se sert TermRecord, on doit également l'utiliser pour installer TermRecord :
pip install TermRecord
Une fois l'installation terminée, voyons comment utiliser TermRecord.
III. Prendre une vidéo du terminal
Prendre une vidéo du terminal avec TermRecord est plutôt simple, pour commencer la vidéo, il suffit d'exécuter la commande suivante (soyez attentifs aux majuscules) :
TermRecord -o record.html
On spécifie avec l'option "-o" le fichier dans lequel sera enregistrée la vidéo. Le format HTML est le format par défaut :
Directement après avoir exécuté cette commande, nous aurons un message comme quoi le script d'enregistrement a débuté et qu'un fichier temporaire d'enregistrement a été créé. À partir de ce moment-là, tout ce que vous saisissez dans le terminal sera enregistré et visible dans la vidéo. On peut alors débuter notre démonstration, tutoriel, etc. Une fois que la démonstration est terminée et que vous souhaitez finir la vidéo, il suffit de saisir "exit" puis d'appuyer sur la touche "ENTRÉE" de votre clavier :
Le message comme quoi le script d'enregistrement est terminé s'affichera et on pourra alors retrouver dans le fichier "record.html" la vidéo enregistrée. Le plus simple pour la visionner est tout simplement d'ouvrir ce fichier avec un navigateur web, voici la forme qu'aura la vidéo :
Rien de plus simple pour enregistrer une session terminal Linux ! TermRecord comprend bien sûr d'autres options comme le changement du format d'enregistrement.
IV. Faire une vidéo avec un enregistrement fait avec script
Une autre manière d'utiliser TermRecord est de l'associer à la commande script, native à Linux. Pour information, la commande script permet d'effectuer le même travail que TermRecord sauf que l'enregistrement est dans un fichier et non dans une vidéo.
Note : Bien que l’enregistrement de script se fasse dans un fichier, celui-ci n'est pas forcément consultable facilement avec un éditeur de texte.
À partir d'un enregistrement de session fait avec la commande script sous Linux, TermRecord va pouvoir convertir cet enregistrement en vidéo, ce qui est un plus lors d'une présentation par exemple. Pour que TermRecord puisse effectuer ce travail, il faut que la commande script ait été utilisée avec l'option --timing qui permet d'enregistrer un fichier de temps qui va séquencer l’enregistrement. Sans ce fichier, TermRecord ne sera pas capable de convertir l'enregistrement script en vidéo. Pour utiliser script et son option --timing, voici la ligne de commande :
script -q scriptrecord --timing=timing record
Ici, scriptrecord est le fichier dans lequel sera enregistrée la session terminal, et timingrecord le fichier de temps qui permettra à TermRecord de séquencer l’enregistrement pour le convertir en vidéo. On y ajoutera l'option "-q" pour "quiet" qui permet d'éviter d'avoir des affichages perturbant l'enregistrement :
Une fois l'enregistrement fait (auquel on mettra fin avec "exit" + ENTRÉE comme avec TermRecord), on pourra trouver dans le répertoire d'enregistrement nos fichiers "scriptrecord1" et "timingrecord" :
On utilisera alors TermRecord pour convertir ces fichiers en vidéo avec la ligne de commande suivante :
TermRecord -s scriptrecord1 -t timingrecord -o record2.html
Encore une fois, l’enregistrement vidéo sera fait dans un fichier HTML, cette fois-ci à partir de ce qui a été enregistré précédemment avec "script". Cette dernière astuce permet donc d'avoir un enregistrement directement faisable sans ajout de commande (dans le cas d'une absence de connexion Internet par exemple), pour le convertir en vidéo plus tard.
Rien de particulier à dire sur cet article. J’écris simplement ce commentaire pour dire que je trouve votre site très intéressant et instructif. J’utilise Linux/Debian depuis une dizaine d’années et lors de la lecture de votre site, je découvre beaucoup de petits utilitaires utiles ou pas (dans mon cas), mais comme le dit l’adage : « inutile donc indispensable » 🙂
Merci donc pour ce partage d’informations !
Merci Mickaël pour ton commentaire,
C’est très encourageant et très motivant pour nous de savoir que notre « travail » (je préfère parler de passion ;)) est apprécié.
A bientôt !