Pagina 1 di 1

Callback Script per tpb

Inviato: dom 11 set 2005, 18:25
da gallows
Ho scritto questo semplice script per l'audio tramite tpb.
Penso possa essere utile per chi lo usa, bisogna semplicemente farlo invocare da CALLBACK in /etc/tpbrc (path completo).
Se qualcuno lo integra con altre funzioni le posti :)

Codice: Seleziona tutto

#!/bin/bash
#
#

TMP=/tmp/tpb-volume  # I don't like it, if you discover
                     # onother hack, please mail me..

[ "$1" == "volume" ] && /usr/bin/aumix -v $2 && echo "$2" > $TMP 

[ "$1" == "mute" ] && if [ "$2" == "on" ]; then
                          /usr/bin/aumix -v 0
                       else
                          /usr/bin/aumix -v `cat $TMP`
                      fi

## EOF ## 
Ps. Ovviamente se trovate una soluzione piú elegante per la funzione "mute off" postatela, io ho risolto cosí e non è che mi piaccia moltissimo (funziona alla grande comunque...).

Re: Callback Script per tpb

Inviato: lun 12 set 2005, 20:22
da masalapianta
gallows ha scritto:

Codice: Seleziona tutto

#!/bin/bash
#
#

TMP=/tmp/tpb-volume  # I don't like it, if you discover
                     # onother hack, please mail me..

[ "$1" == "volume" ] && /usr/bin/aumix -v $2 && echo "$2" > $TMP 

[ "$1" == "mute" ] && if [ "$2" == "on" ]; then
                          /usr/bin/aumix -v 0
                       else
                          /usr/bin/aumix -v `cat $TMP`
                      fi

## EOF ## 
Ps. Ovviamente se trovate una soluzione piú elegante per la funzione "mute off" postatela, io ho risolto cosí e non è che mi piaccia moltissimo (funziona alla grande comunque...).
una soluzione piu' elegante e' fare il parsing dell'output di aumix -q, che e' piu' o meno quel che segue:

vol 100, 100
pcm 100, 100
speaker 64, 64
line 64, 64, R
mic 64, 64, P
cd 64, 64, P
igain 64, 64, P
line1 64, 64, P
phin 64, 64, P
phout 64, 64
video 64, 64, P

ad esempio il parsing del volume lo fai semplicemente con :

vol1=`aumix -q|grep vol|awk '{print $2}'|sed 's/,//'`
vol2=`aumix -q|grep vol|awk '{print $3}'`
ecc.. ecc...

in questo modo non devi scrivere i settaggi in dei file temporanei

Inviato: lun 12 set 2005, 20:38
da gallows
Grande masalapianta, non ci avevo pensato..
Lo sostituisco immediatamente!

Tnx :wink:

Inviato: lun 12 set 2005, 21:29
da gallows
Uhm, c'è un problema...
Quello script non è sempre in ascolto, da qualche parte devo salvarlo il valore, no? È possibile esportare una variabile da una subshell alla shell di livello superiore?

Inviato: mer 14 set 2005, 13:22
da Paoletta
se ho ben capito cosa vuoi fare puoi usare il valore memorizzato in ~/.aumixrc

Codice: Seleziona tutto

cat .aumixrc |grep vol| cut -d ":" -f 2

Inviato: mer 14 set 2005, 14:25
da gallows
Perfetto, prima di zittire le casse salvo il valore in .aumixrc e poi lo carico con unmute! Grazie per la dritta ;)

Codice: Seleziona tutto

#!/bin/bash

VOL="`cat $HOME/.aumixrc | grep vol | cut -d : -f2`"

[ "$1" == "volume" ] && /usr/bin/aumix -v $2

[ "$1" == "mute" ] && if [ "$2" == "on" ]; then
                          /usr/bin/aumix -S
                          /usr/bin/aumix -v 0
                       else
                          /usr/bin/aumix -v $VOL
                      fi

Inviato: mer 14 set 2005, 19:36
da Paoletta
prego! :wink: