[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Linux-31] Avis sur ce script de capture audio/vidéo
- To: Linux 31 <linux-31@culte.org>
- Subject: [Linux-31] Avis sur ce script de capture audio/vidéo
- From: Pierre ESTREM <peterpan31@free.fr>
- Date: Thu, 7 Nov 2019 01:27:48 +0100
- User-agent: Mozilla/5.0 (X11; Linux i686; rv:60.0) Gecko/20100101 Thunderbird/60.9.0
bonsoir,
Mon script fonctionne.
Je le lance avec un raccourci-clavier.
Je le stoppe avec un autre raccourci-clavier qui exécute "pkill avconv".
Mais j'ai des questions...
#!/bin/bash
#### Capture vidéo de l'écran et des E/S audio et de la vue de la
webcam si présente
#### Mettre le volume du microphone à 100%
amixer -q set -D pulse Capture unmute
amixer -q set -D pulse Capture 100%
#### Mettre à fond le volume des haut-parleurs
amixer -q -D pulse sset Master unmute
amixer -q -D pulse sset Master 100%
#### Résolution de l'écran
Res=`xrandr | grep "^.*\*+.*$" | tr -s ' ' | cut -d ' ' -f2`
#### Nom de la sortie audio active
Speakers="`pactl list short sources | grep -E '^.*alsa_output\..*$' |
grep -E '(RUNNING|IDLE)' | cut -f2`"
#### Nombre de canaux pour la sortie audio
Speakers_ch="`pactl list short sources | grep $Speakers | sed -n 's/^.*
\([1-9]\)ch .*$/\1/p'`"
#### Tableau des entrées audio et de leurs nombre de canaux
Mic=( `pactl list short sources | sed -n 's/^.*\(alsa_input\.[^\t]\+\).*
\([1-9]\)ch.*$/\1\t\2/p'` )
#### Nombre d'entrées audio
let "Nb_inputs = ${#Mic[@]} / 2"
#### Nombre de sources audio
let "Nb_audio = $Nb_inputs + 1"
#### Ligne des paramètres des entrées audio à passer à avconv
Inputs=""
for (( i=0 ; i<$Nb_inputs; i++ ))
do
Inputs="$Inputs -f pulse -ac ${Mic[`expr 2 \* $i + 1`]} -i
${Mic[`expr 2 \* $i`]}"
done
#### Affichage de la vue de la webcam USB si présente (en 320x240)
if [ -c "/dev/video0" ]; then
avplay -f video4linux2 -framerate 30 -video_size qvga /dev/video0&
fi
avconv \
-loglevel error \
-async 1 \
$Inputs \
-f pulse -ac $Speakers_ch \
-i $Speakers \
-filter_complex amix=inputs=$Nb_audio \
-f x11grab -r 25 -s $Res -i $DISPLAY \
-c:v libx264 -preset ultrafast \
"$HOME/Vidéos/capture-`date '+%Y-%m-%d-at-%H:%M:%S'`.mp4"
pkill avplay
#### Fin
J'aimerais savoir comment améliorer la qualité de la piste audio
résultante du mixage.
En outre les lignes relatives au microphone n'ont aucun effet (ni avec
"Capture ni "Mic") et que ce soit avec un microphone jack 3.5mm ou
microphone USB.
Où fais-je les erreurs ?
3
Note:
La commande "pactl list short sources" affiche pour le microphone :
3 alsa_input.pci-0000_00_1b.0.analog-stereo module-alsa-card.c
s16le 2ch 48000Hz SUSPENDED
N'hésitez pas critiquer ces lignes svp.
Je vous remercie.
--
pierre estrem