Accéder au contenu.
Menu Sympa

linux-31 - [Linux-31] Avis sur ce script de capture audio/vidéo

Objet : Discussions sur le logiciel libre

Archives de la liste

[Linux-31] Avis sur ce script de capture audio/vidéo


Chronologique Discussions 
  • From: Pierre ESTREM <peterpan31 AT free.fr>
  • To: Linux 31 <linux-31 AT culte.org>
  • Subject: [Linux-31] Avis sur ce script de capture audio/vidéo
  • Date: Thu, 7 Nov 2019 01:27:48 +0100

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



  • [Linux-31] Avis sur ce script de capture audio/vidéo, Pierre ESTREM, 07/11/2019

Archives gérées par MHonArc 2.6.19+.

Haut de le page