====== Byzanz ====== * Objet : Prise en main du logiciel byzanz * Niveau requis : {{tag>débutant}} * Commentaires : //créateur de petites captures vidéo. // * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) * créé le 28/11/2017 testé sous Debian Stretch * modifié le 30/11/2017 (ajout d'un script et peaufinage) * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=245888#p245888 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) ===== Introduction ===== Logiciel de **//screencast//** (capture de bureau) Byzanz est un enregistreur de bureau et un **outil en ligne de commande** permettant d'enregistrer le bureau actuel ou une partie de celui-ci pour en faire un GIF animé ou une vidéo Ogg Theora, Flash ou WebM. Cela est particulièrement pratique pour publier sur le web. . Byzanz permet également la capture audio, si le format de sortie le prend en charge.\\ Byzanz possède 2 parties byzanz-record et byzanz-playback ===== Installation ===== apt update && apt upgrade apt install byzanz ===== Utilisation ===== ==== byzanz-record ==== syntaxe : \\ byzanz-record [OPTION...] fichier de sortie \\ c'est l'extension du fichier qui déterminera le format \\ les extensions possible sont: **.gif .ogg .ogv .webm .flv** et enfin **.byzanz** qui permet d’être manipulé via Byzanz-playback Options de l'application : -d, --duration=SECS Durée de l'animation (par défaut : 10 secondes) -e, --exec=COMMAND Command to execute and time --delay=SECS Délai avant le démarrage (par défaut : 1 seconde) -c, --cursor Enregistrer le curseur de la souris -a, --audio Enregistrer le son -x, --x=PIXEL Coordonnée X du rectangle à enregistrer -y, --y=PIXEL Coordonnée Y du rectangle à enregistrer -w, --width=PIXEL Largeur du rectangle à enregistrer -h, --height=PIXEL Hauteur du rectangle à enregistrer -v, --verbose Mode verbeux --display=AFFICHAGE Affichage X à utiliser Première chose nécessaire pour une bonne capture connaître la résolution actuel de son écran.\\ Déterminer la zone à capturer : \\ l'application prend le coin supérieur gauche de l'écran comme référence \\ Idem les coordonnées du rectangle à enregistrer auront comme de référence le coin supérieur gauche .------ >Ceci est un écran< | (\_/) Point de référence | (O.o) | | (> <) | X v '---------> 0-------------------->.---------------------. | | | Y | hg | hd | | Quart haut gauche | Quart haut droit | | | | | | | | | | v | | .---------------------.---------------------. | | | | | | | bg | bd | | Quart bas gauche | quart bas droit | | | | | | | | | | '---------------------'---------------------' === Exemple === Considérons un écran en résolution 1280x1024 \\ Enregistrement du quart supérieur droite de l'écran avec pointeur de souris inclus pour une durée de 30 secondes\\ point de départ de la zone à capturer : * -x 640 (1280÷2) * -y 0 zone de capture: \\ * largeur -w 640 (1280÷2) * hauteur -h 512 (1024÷2) \\ byzanz-record -vc -d 30 -x 640 -y 0 -w 640 -h 512 ~/byzanz_hd.gif Pour enregistrer l'écran en entier il suffit juste de ... byzanz-record -vc -d 30 ~/byzanz_hd.gif Utilisez le mode verbeux (-v)est recommandé, et éventuellement mettre un --delay plus long avant le départ \\ Recording starts. Will record 30 seconds...\\ Enregistrement terminé. Fin du codage en cours...\\ Enregistrement terminé. aucun contrôle sur le fichier de sortie, un fichier existant sera écrasé l'enregistrement du son (-a) ne peux être utilisé que sur les fichiers ayant une extension supportant l'option ==== byzanz-playback ==== Manipule les fichiers **.byzanz**\\ byzanz-playback source.byzanz fichier_destination \\ === Exemple === byzanz-playback byzanz_hd.byzanz byzanz_hd.ogg La conversion prend un certain temps qui peut être un peu long sur de vieille machine\\ **bien attendre le retour du prompt** ==== Suppléments ==== Byzanz étant anciennement disponible comme applet pour Gnome il en reste encore les icônes disponible sous /usr/share/icons/hicolor/22x22/apps/ /usr/share/icons/hicolor/scalable/apps/ ===Script byzanz-gui=== J'ai fais quelque modification d'un script trouvé sur un article de blog \\ Il faudra peut être l'adapter :\\ J'ai utilisé un fichier son de Libreoffice pour la notification FIXME créer un fichier texte avec le nom byzanz-gui puis copier/coller le contenu du script une fois le script enregistré le rendre exécutable chmod +x byzanz-gui tester le script depuis votre répertoire personnel ./byzanz-guiSi tout fonctionne déplacé le mv byzanz-gui /user/local/bin Pour effectuer une capture en gif byzanz-guiLe répertoire d'enregistrement par défaut est ~/Vidéos \\ Il ne reste plus qu'a créer un lanceur avec un icône disponible 8-) #!/bin/bash # AUTHOR: (c) Rob W 2012, modified by MHC (http://askubuntu.com/users/81372/mhc) # NAME: GIFRecord 0.1 # DESCRIPTION: A script to record GIF screencasts. # LICENSE: GNU GPL v3 (http://www.gnu.org/licenses/gpl.html) # DEPENDENCIES: byzanz,gdialog,notify-send (install via sudo add-apt-repository ppa:fossfreedom/byzanz; sudo apt-get update && sudo apt-get install byzanz gdialog notify-osd) #modification mineur Croutons ;-) # Time and date #TIME=$(date +"%Y-%m-%d_%H%M%S") TIME=$(date +"%d-%m-%Y_%H:%M:%S") # Delay before starting (delai avant enregistrement) DELAY=10 # Standard screencast folder (répertoire d'enregistrement par défaut) FOLDER="$HOME/Vidéos" # Default recording duration (durée d'enregistrement par défaut) DEFDUR=10 # Son notification à jouer en début et en fin d'enregistrement beep() { paplay /usr/lib/libreoffice/share/gallery/sounds/apert.wav & } # Custom recording duration as set by user notify-send -i dialog-warning -t 11000 "IMPORTANT" "Réduisez les fenêtres indésirables présentes dans la zone de capture." & USERDUR=$(gdialog --title "Durée?" --inputbox "Veuillez entrer la durée de la capture en secondes" 200 100 2>&1) # Duration and output file if [ -z $USERDUR ]; then #test si la variable est nul D=$DEFDUR else D=$USERDUR fi notify-send -t 9500 "GIFcapture" "Cliquez sur la fenêtre qui va servir de zone de capture" # Window geometry XWININFO=$(xwininfo) read X < <(awk -F: '/Absolute upper-left X/{print $2}' <<< "$XWININFO") read Y < <(awk -F: '/Absolute upper-left Y/{print $2}' <<< "$XWININFO") read W < <(awk -F: '/Width/{print $2}' <<< "$XWININFO") read H < <(awk -F: '/Height/{print $2}' <<< "$XWININFO") # Notify the user of recording time and delay notify-send -i /usr/share/icons/hicolor/scalable/apps/byzanz-record-window.svg -t 9500 "GIFcapture" "La durée d'enregistrement est de $D secondes. L'enregistrement débutera dans $DELAY secondes." #Actual recording sleep $DELAY beep byzanz-record -c --verbose --delay=0 --duration=$D --x=$X --y=$Y --width=$W --height=$H "$FOLDER/GIFcapture_$TIME.gif" beep # Notification de fin d'enregistrement. notify-send -t 17000 "GIFcapture" "Screencast sauvé sous $FOLDER/GIFcapture_$TIME.gif" ----- Sources base du script https://www.maketecheasier.com/record-screen-as-animated-gif-ubuntu/