diff --git a/HowtoEnregistrerPresentation.md b/HowtoEnregistrerPresentation.md index 47ac39bd..235c16d8 100644 --- a/HowtoEnregistrerPresentation.md +++ b/HowtoEnregistrerPresentation.md @@ -60,7 +60,29 @@ $ ffmpeg […] -video_size 1920x1080 -framerate 30 -f x11grab -i :0.0+1360,0 [ On indique donc une zone de capture de la taille de l'écran externe, décallée de 1360 pixels vers la droite. Sans ce décallage, x11grab capturait à partir du coin haut-gauche de l'écran interne. -Il est possible de générer ces dimensions et positions de manière automatique en utilisant les informations fournies par `i3-msg -t get_outputs` ou plus directement par `xandr` ou `randr` si ça s'avère possible. +Il est possible de générer ces dimensions et positions de manière automatique : + +~~~{.bash} +#!/bin/sh + +screen_name=${1:-HDMI2} + +xrandr_info=$(xrandr | grep ${screen_name}) +screen_state=$(echo ${xrandr_info} | cut -d ' ' -f 2) + +if [[ $screen_state != "connected" ]]; then + echo "Screen ${screen_name} is disconnected" + exit 1 +fi + +screen_geometry=$(echo ${xrandr_info} | cut -d ' ' -f 4) +screen_size=$(echo ${screen_geometry} | cut -d '+' -f 1) +screen_pos_x=$(echo ${screen_geometry} | cut -d '+' -f 2) +screen_pos_y=$(echo ${screen_geometry} | cut -d '+' -f 3) +screen_pos="${screen_pos_x},${screen_pos_y}" + +echo ffmpeg […] -video_size ${screen_size} -framerate 30 -f x11grab -i :0.0+${screen_pos} […] +~~~ #### Encodage