Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 01-03-2015 15:11:47

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Demande d'améliorations d'un script avconv

Bonjour

Ce script permet de capturer le son sur monitor ou line avec avconv.
J'ai accès aux différents choix avec Zenity
La capture se lance et mon terminal est donc ouvert avec les infos  qui défilent dedans.
Mon but est de mettre un progressbar pulsar dans un premier temps.

Le terminal et le travail ne peut-être quitter que par ctrl+c
Je voudrais donc ne plus voir le terminal en visuel donc avoir un truc comme  arret lié a ctrl+c en bouton.
Ce qui m'éviterai d'allez dans les processus et de killer hmm
Est-ce faisable ?

le début de script bien fonctionnel déja :


#!/bin/bash

#patrick@debian:~$ pactl list sources | grep Name:
# Name: alsa_input.pci-0000_05_01.1.analog-stereo
# Name: alsa_output.pci-0000_05_02.0.analog-surround-51.monitor
# Name: alsa_input.pci-0000_05_02.0.analog-stereo
#patrick@debian:~$




Format=("Monitor 6 Channels 16 Bits Wav" "Monitor 2 Channels Flac" "Monitor 2 Channels 24 Bits Wav" "Line")

choice=$(zenity --list --radiolist --width=450 --height=250 \
        --title "Capture" \
        --text="Sélectionner un choix" \
        --column="Choix" --column="Format & Entrée" \
                FALSE           "${Format[0]}" \
                FALSE           "${Format[1]}" \
                FALSE           "${Format[2]}" \
                FALSE           "${Format[3]}");                                              

echo "choice=$choice"
if    [ "$choice" == "${Format[0]}" ]; then avconv -ac 6 -ar 96000 -f  pulse -i alsa_output.pci-0000_05_02.0.analog-surround-51.monitor  -acodec copy ~/Bureau/Monitor-$(date +%F-%H-%M-%S).wav
elif  [ "$choice" == "${Format[1]}" ]; then avconv  -ac 2 -ar 96000 -f pulse -i  alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec  flac  -compression_level 0   ~/Bureau/Monitor-$(date +%F-%H-%M-%S).flac
elif  [ "$choice" == "${Format[2]}" ]; then avconv -ac 2 -ar 96000 -f pulse -i alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec pcm_s24le ~/Bureau/Monitor-$(date +%F-%H-%M-%S).wav
elif  [ "$choice" == "${Format[3]}" ]; then avconv -f alsa -ac 2 -ar 44000 -f pulse -i alsa_input.pci-0000_05_02.0.analog-stereo -acodec pcm_s16le ~/Bureau/LINE-$(date +%F-%H-%M-%S).wav
else
    echo "Aucun choix, -- Arrêt"
    exit 1
fi
 
 



Merci par avance à celui ou ceux qui voudront bien m'aider.

Dernière modification par golgot200 (01-03-2015 15:16:42)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#2 02-03-2015 01:02:33

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Demande d'améliorations d'un script avconv

Voilà, perso où j'en suis smile


#!/bin/bash


#patrick@debian:~$ pactl list sources | grep Name:
#    Name: alsa_input.pci-0000_05_01.1.analog-stereo
#    Name: alsa_output.pci-0000_05_02.0.analog-surround-51.monitor
#    Name: alsa_input.pci-0000_05_02.0.analog-stereo
#patrick@debian:~$



Format=(" Monitor   6 Channels 16 Bits Wav" " Monitor   2 Channels Flac" " Monitor   2 Channels 24 Bits Wav" " Line")
choice=$(zenity --list --radiolist --width=450 --height=250 \
        --title "Capture" \
        --text="Sélectionner un choix" \
        --column="Choix" --column=" Entrée    Format" \
                FALSE           "${Format[0]}" \
                FALSE           "${Format[1]}" \
                FALSE           "${Format[2]}" \
                FALSE           "${Format[3]}");                                               




echo "choice=$choice"
if  [ "$choice" == "${Format[0]}" ]; then avconv -ac 6 -ar 96000 -f  pulse -i alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec copy  ~/Bureau/Monitor-$(date +%F-%H-%M-%S).wav  & export PID=$$
   wait $PID
   zenity --progress --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."
   export YES=$



elif  [ "$choice" == "${Format[1]}" ]; then avconv  -ac 2 -ar 96000 -f pulse -i  alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec  flac  -compression_level 0   ~/Bureau/Monitor-$(date +%F-%H-%M-%S).flac  & export PID=$$
   wait $PID
   zenity --progress --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."
   export YES=$



elif  [ "$choice" == "${Format[2]}" ]; then avconv -ac 2 -ar 96000 -f pulse -i alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec pcm_s24le ~/Bureau/Monitor-$(date +%F-%H-%M-%S).wav & export  PID=$$
   wait $PID
   zenity --progress --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."
   export YES=$




elif  [ "$choice" == "${Format[3]}" ]; then avconv -f alsa -ac 2 -ar 44000 -f pulse -i alsa_input.pci-0000_05_02.0.analog-stereo -acodec pcm_s16le ~/Bureau/LINE-$(date +%F-%H-%M-%S).wav & export PID=$$
PID=$$
   wait $PID
   zenity --progress --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."
   export YES=$

else
    echo "Aucun choix, -- Arrêt"
    exit 1
fi

Dernière modification par golgot200 (02-03-2015 01:54:44)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#3 02-03-2015 18:20:08

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Demande d'améliorations d'un script avconv

Amélioration :

#!/bin/bash


#patrick@debian:~$ pactl list sources | grep Name:
#    Name: alsa_input.pci-0000_05_01.1.analog-stereo
#    Name: alsa_output.pci-0000_05_02.0.analog-surround-51.monitor
#    Name: alsa_input.pci-0000_05_02.0.analog-stereo
#patrick@debian:~$




Format=(" Monitor   6 Channels 16 Bits Wav" " Monitor   2 Channels Flac" " Monitor   2 Channels 24 Bits Wav" " Line")
choice=$(zenity --list --radiolist --width=450 --height=250 \
        --title "Capture" \
        --text="Sélectionner un choix" \
        --column="Choix" --column=" Entrée    Format" \
                FALSE           "${Format[0]}" \
                FALSE           "${Format[1]}" \
                FALSE           "${Format[2]}" \
                FALSE           "${Format[3]}");                                               




echo "choice=$choice"
if    [ "$choice" == "${Format[0]}" ]; then avconv -ac 6 -ar 96000 -f  pulse -i alsa_output.pci-0000_05_02.0.analog-surround-51.monitor  -acodec copy ~/Bureau/Monitor-$(date +%F-%H-%M-%S).wav & export PID=$$
zenity --progress  --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."


elif  [ "$choice" == "${Format[1]}" ]; then avconv  -ac 2 -ar 96000 -f pulse -i  alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec  flac  -compression_level 0   ~/Bureau/Monitor-$(date +%F-%H-%M-%S).flac  & export PID=$$
zenity --progress  --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."



elif  [ "$choice" == "${Format[2]}" ]; then avconv -ac 2 -ar 96000 -f pulse -i alsa_output.pci-0000_05_02.0.analog-surround-51.monitor -acodec pcm_s24le ~/Bureau/Monitor-$(date +%F-%H-%M-%S).wav  & export PID=$$
zenity --progress  --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."


elif  [ "$choice" == "${Format[3]}" ]; then avconv -f alsa -ac 2 -ar 44000 -f pulse -i alsa_input.pci-0000_05_02.0.analog-stereo -acodec pcm_s16le ~/Bureau/LINE-$(date +%F-%H-%M-%S).wav & export PID=$$
zenity --progress  --width=600 --height=50 --pulsate  --auto-close --text="Capture en cours..."

else
    echo "Aucun choix,  -- Arrêt"
    exit 1
fi

Dernière modification par golgot200 (02-03-2015 18:20:57)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

Pied de page des forums