Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Forum italiano (Italian) Risorse italiane (documentazione e tools)
  • Search

[TIP] Gestire il mixer via tasti FN

Forum riservato alla documentazione in italiano.

Moderator: ago

Post Reply
  • Print view
Advanced search
33 posts
  • Previous
  • 1
  • 2
Author
Message
mouser
Veteran
Veteran
User avatar
Posts: 1419
Joined: Tue Aug 10, 2004 10:49 am
Location: Milano
Contact:
Contact mouser
Website

  • Quote

Post by mouser » Sat Feb 26, 2005 7:34 am

codadilupo wrote: le nostre (mia e di shev) sono questa

Coda
hmmm, la mia tastierina da casa e' come la vostra, pero' non ho il mouse ed e' ancora una "troglodita" tastiera usb...... i tasti multimediali pero' sono uguali! Nel caso si faccia il programmino, visto che non sono molto buono con il python, se posso dare una mano nel testing (e magari posso fare una bella interfaccina in gtk :wink: )

mouser :wink:
Top
bandreabis
Advocate
Advocate
User avatar
Posts: 2497
Joined: Fri Feb 18, 2005 4:21 pm
Location: イタリアのロディで

  • Quote

Post by bandreabis » Wed Aug 09, 2006 7:59 pm

dove salvo osdvol.py? Devo renderlo eseguibile?
Il numero di post non fa di me un esperto! Anzi!
Top
mouser
Veteran
Veteran
User avatar
Posts: 1419
Joined: Tue Aug 10, 2004 10:49 am
Location: Milano
Contact:
Contact mouser
Website

  • Quote

Post by mouser » Thu Aug 10, 2006 7:21 am

bandreabis wrote:dove salvo osdvol.py? Devo renderlo eseguibile?
Ovunque vuoi, l'importante è che poi ~/.xbindkeysrc abbia il path corretto.
Si, devi renderlo eseguibile se vuoi lanciarlo semplicemente richiamando il nome, altrimenti invece di

Code: Select all

$ ./osdvol.py
lo dovrai lanciare con

Code: Select all

$ python osdvol.py
Ciriciao
mouser :wink:
Top
mouser
Veteran
Veteran
User avatar
Posts: 1419
Joined: Tue Aug 10, 2004 10:49 am
Location: Milano
Contact:
Contact mouser
Website

  • Quote

Post by mouser » Thu Aug 10, 2006 8:51 am

Mi sono permesso di stravolgere il lavoro dei Sideralis Bros. :lol:

Ne e' venuto fuori bosdvol.... la *b* iniziale sta a significare che, non conoscendo il python, ho riscritto tutto in bash, mantenendo le funzionalita' e modificando una piccolissima cosa grafica.

Ora, utilizzando bosdvol, oltre a tutto quello che potevate fare con osdvol, nel momento in cui aumentate/diminuite il volume vedrete una simpaticissima barra progressiva in basso al centro dello schermo. Inoltre ho modificato il font in modo da utilizzarne uno standard (per esempio quello che usa Fede mi dava problemi perchè non trovava il font ^.^)

Spero che possa essere di aiuto a qualcuno e magari di spunto a qualcun'altro.

(ah, anche il file di appoggio che utilizza il programma è lo stesso con la stessa sintassi, quindi potete decidere volta per volta quale dei due tool usare mantendeno entrambi aggiornati al sistema 8) )

Per ottenere lo script:

Code: Select all

$ wget http://mouser.altervista.org/software/gentoo/bosdvol
La spiegazione di come usarlo, configurarlo ecc, non la posto (usate pure quella di fedeliallalinea, è perfetta)

e qui il codice :wink:

Code: Select all

#!/bin/bash
#
# Conversione in bash e modifica per visualizzare una barra di scorrimento
# di osdvol.py di Sideralis
#
# Matteo <mouser> Cappadonna, 2006
# matteo.cappadonna(at)gmail.com
#---
# osdvol.py permette tramite l'ausilio di setmixer
# http://packages.debian.org/testing/sound/setmixer.html
# il controllo del volume sonoro.
# osdvol.py e' ideato per lavorare preferibilmente coi tasti
# funzione adeguati sulle tastiere multimediali e portatili.
# osdvol.py supporta:
# - creazione automatica del file di configurazione ~/.setmixer
# - aumento,diminuzione e mute/unmute del volume
# - mantenimento delle impostazioni del volume passando dallo stato di
#   mute a quello di unmute e viceversa
# - possibilita' di variare il volume nello stato di mute per riottenerlo
#   modificato tornando unmute
# - stampa a schermo dello stato sonoro tramite xosd http://www.ignavus.net
#
#  Questo programma e' liberamente modificabile.
#  Sideralis Programs
#  Federico e Riccardo Galli
#  http://www.sideralis.net

function help () {
        echo
        echo "usage: bosdvol (+|-|mute)"
        echo "  +     Aumenta il volume"
        echo "  -     Diminuisce il volume"
        echo "  mute  Attiva/Disattiva il muto"
        echo
}

if [ ${#1} -eq 0 ]; then
        help
        exit
fi

MUTE=`cat $HOME/.setmixer | head -1`
VOLUME=`cat $HOME/.setmixer | tail -1`

XOSDOPT="--font=8x13 --shadow=1 --pos=bottom --align=center --color=lightgreen --delay=1 --offset="

case $1 in
  '+'|'-')
        # Incremento o decremento il volume
        if [ $1 = '+' ]; then
                VOLUME=`expr $VOLUME + 3`
        else
                VOLUME=`expr $VOLUME - 3`
        fi

        # Salva i valori nel file ~/.setmixer
        echo $MUTE > $HOME/.setmixer
        echo $VOLUME >> $HOME/.setmixer

        # Imposta il volume con setmixer
        if [ $MUTE -eq 0 ]; then
                setmixer vol $VOLUME
        fi

        # Visualizza la scritta e la barra
        if [ $MUTE -eq 1 ]; then
                TEXT="Mute ON - Volume $VOLUME%"
        else
                TEXT="Volume $VOLUME%"
        fi
        echo $TEXT | osd_cat $XOSDOPT"50" &
        echo $TEXT | osd_cat $XOSDOPT"40" --barmode=percentage --percentage=$VOLUME &
        ;;

  'mute')
        # Modifico il valore del mute ed il suono
        if [ $MUTE -eq 0 ]; then
                MUTE=1
                setmixer vol 0
        else
                MUTE=0
                setmixer vol $VOLUME
        fi

        # Salva i valori nel file ~/.setmixer
        echo $MUTE > $HOME/.setmixer
        echo $VOLUME >> $HOME/.setmixer

        if [ $MUTE -eq 0 ]; then
                TEXT="Mute OFF"
        else
                TEXT="Mute ON"
        fi
        echo $TEXT | osd_cat $XOSDOPT"40" &
        ;;

  *)
        help
        ;;
esac
Ciriciao
mouser :wink:
Top
bandreabis
Advocate
Advocate
User avatar
Posts: 2497
Joined: Fri Feb 18, 2005 4:21 pm
Location: イタリアのロディで

  • Quote

Post by bandreabis » Thu Aug 10, 2006 10:57 pm

Niente, non riesco nè con uno nè con l'altro.
Sono tornato a hotkeys ma ho i soliti problemi di unmute dopo riavvio, della lucina Mute che non si accende.

Andrea
Il numero di post non fa di me un esperto! Anzi!
Top
bandreabis
Advocate
Advocate
User avatar
Posts: 2497
Joined: Fri Feb 18, 2005 4:21 pm
Location: イタリアのロディで

  • Quote

Post by bandreabis » Thu Aug 17, 2006 7:46 pm

Beh, ho usato hotkeys per associare i tasti a osdvol.py e funziona anche lui, ma non risolve il problema del riavvio con il muto attivo.

Andrea
Il numero di post non fa di me un esperto! Anzi!
Top
lucapost
Veteran
Veteran
User avatar
Posts: 1420
Joined: Thu Nov 24, 2005 4:33 pm
Location: <ud|me|ts> - Italy
Contact:
Contact lucapost
Website

  • Quote

Post by lucapost » Thu Apr 12, 2007 4:32 pm

un altro problema è il tempo di permanenza dell'output di osd_cat sullo schermo, infatti avrete notato che premendo i tasti a distanza troppo brevi le scritte si sovrappongono.
una possibile soluzione potrebbe essere uccidere il demone osd_cat ad ogni premuta del tasto...così si potrebbe anche allungare i tempi di output sullo schermo, devo solo trovare il posto giusto dove metterlo nello script....
LP
Top
lucapost
Veteran
Veteran
User avatar
Posts: 1420
Joined: Thu Nov 24, 2005 4:33 pm
Location: <ud|me|ts> - Italy
Contact:
Contact lucapost
Website

  • Quote

Post by lucapost » Sat Apr 14, 2007 10:31 am

alla fine, prendendo un pezzo di qua ed un pezzo di la, ho creato il mio script per gestire il volume con i tasti Fn e l'acpid (acpi4asus), la guida dalla quale ho preso spunto è questa.
Ho creato i file degli eventi:

Code: Select all

lucapost@jarod ~ $ cat ~/.asus_acpi/events/mute 
event=hotkey.*32[[:space:]].*
action=~/.asus_acpi/volume state

Code: Select all

lucapost@jarod ~ $ cat ~/.asus_acpi/events/volup 
event=hotkey.*30[[:space:]].*
action=~/.asus_acpi/volume +

Code: Select all

lucapost@jarod ~ $ cat ~/.asus_acpi/events/voldowm 
event=hotkey.*31[[:space:]].*
action=~/.asus_acpi/volume -
e lo script ~/.asus_acpi/volume :

Code: Select all

#!/bin/sh
PERC=`amixer get PCM | tail -1 | cut -d'[' -f2 | cut -d']' -f1 |sed s/'%'//`
XOSDOPT="--font=-misc-*-bold-*-*-*-26-*-*-*-*-*-*-* --pos=bottom --align=center --color=green --delay=1"

killall osd_cat &> /dev/null

if [ "$1" = "state" ] ; then

   amixer -q set Headphone toggle

else

   amixer set PCM 1%$1 
   osd_cat $XOSDOPT -b percentage -T "VOLUME ${PERC}%" -P ${PERC} &

fi

Lampeggia un pò troppo veloce, ma risolve quello che secondo me è il problema dei tempi morti.
Come posso evitare questo lampeggiamento dovuto al kill di osd_cat? mi piacerebbe ottenere un effetto della gestione del volume come quello dell'osd di mplayer senza lampeggi....qualcumo sa aiutarmi?

/edit: l'ho semplificato un po! 8)
LP
Top
Post Reply
  • Print view

33 posts
  • Previous
  • 1
  • 2

Return to “Risorse italiane (documentazione e tools)”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy