alsavolosd: ένας εναλλακτικός τρόπος για να ρυθμίζετε την ένταση της κάρτας ήχου σας

gnu_labis | Τρί, 11/23/2010 - 18:41 | 5' | 0

Πρόσφατα έκανα τη (επιτέλους) την υπέρβαση να δοκιμάσω ένα tiling window manager (αντί του KDE που δούλευα τελευταία), κ πιο συγκεκριμένα τον i3. Μια κ δύο λοιπόν, έκανα εγκατάσταση το πακέτο i3-wm κ άρχισα να χαζεύω τη "φάση".

Περιττό να σας πω ότι ξετρελάθηκα κ απορώ γιατί δεν έκανα το πέρασμα νωρίτερα. Πλέον, τόσο το desktop όσο κ το laptop τρέχουν i3. K σιγά-σιγά, κολλάνε κ οι υπολογιστές μου στο γραφείο! Αλλά τα περί window manager (WM), άλλη φορά...

Γιατί αυτή τη φορά, θα σας πω για ένα Bash script που χρειάστηκα κ έφτιαξα με αφορμή την αλλαγή του περιβάλλοντος μου.

Ένα κλασσικό ζήτημα που προκύπτει με αυτούς τους μινιμαλιστικούς WM είναι η παντελής έλλειψη οποιουδήποτε μη βασικού εργαλείου. Ό,τι θέλει ο χρήστης, το φτιάχνει,κ αυτό είναι βέβαια κ μέρος της μαγείας (για όποιους φυσικά αρέσκονται σε τέτοιου είδους μαζοχισμούς/ψυχαναγκασμούς). Μιλάμε για το απόλυτο custom περιβάλλον :D

Το πρόβλημα μου λοιπόν ήταν ότι δεν είχα τρόπο να ελέγξω την ένταση της κάρτας ήχου γρήγορα κ απλά. Το πιο λογικό/γρήγορο ήταν να τρέξω κάποιο mixer (πχ kmix, ή alsamixer από τερματικό), κ να πειράξω την ένταση από εκεί, αλλά είναι πολύς "δρόμος".

Σκέφτηκα λοιπόν να φτιάξω ένα script που ανεβάζει/κατεβάζει/κάνει mute/unmute την ένταση, κ να το "δέσω" σε κάποιους συνδυασμούς πλήκτρων. Στο laptop μου έχω τα σχετικά πλήκτρα, κ στο desktop θα χρησιμοποιούσα το "Win" πλήκτρο κ F1, F2, F3.

Ήθελα όμως να έχω κ οπτικό "feedback" για να ξέρω σε τί ένταση βρίσκεται η κάρτα. Θυμήθηκα λοιπόν κάτι βιβλιοθήκες που είχα δει κ παλαιότερα, που προσομοιώνουν το (συνήθως πράσινο) OSD των τηλεοράσεων.

Για να καταλάβετε τί εννοώ, εγκαταστήστε το πακέτο "aosd-cat" κ δώστε σε ένα τερματικό την εντολή:

echo "test" | aosd_cat"

κ κοιτάξτε κάτω δεξιά στην οθόνη σας. Το πιάσατε το υπονοούμενο...

Έφτιαξα λοιπόν το script, το οποίο κ ανέβασα στο github, για όποιον το βρει χρήσιμο:
http://github.com/gnulabis/alsavolosd

Το script περιέχει αρκετά σχόλια για να καταλάβετε τί κάνει κ πώς ρυθμίζεται, αλλά όποιος έχει απορία, ρωτάει φυσικά.

Σίγουρα πρέπει να το ανοίξετε κ να αλλάξετε το όνομα του καναλιού της κάρτας σας. Αν δεν ξέρετε τα ονόματα των καναλιών μπορείτε να το τρέξετε με την παράμετρο "list":

alsavolosd list

Από εκεί κ πέρα, το χρησιμοποιείτε ως:

alsavolosd up
alsavolosd down
alsavolosd mute

Το πρώτο ανεβάζει την ένταση κατά 2dB, το δεύτερο την κατεβάζει, κ το τρίτο κάνει mute/unmute.

Όταν είναι muted, το χρώμα του OSD είναι κόκκινο, αλλιώς είναι το κλασσικό ανοιχτό πράσινο.

Φυσικά, τα πάντα αλλάζουν (μέγεθος, χρώματα, κανάλια, το βήμα της έντασης κλπ κλπ), ρίξτε απλά μια ματιά στις ρυθμίσεις στην αρχή του script.

Δοκιμάστε το πρώτα από ένα τερματικό, κ άμα παίζει, κάντε μια αντιστοίχηση των τριών αυτών εντολών με όποια πλήκτρα εσείς θέλετε.

Κ οι απαραίτητες φωτό πριν κλείσω...


Α! ξέχασα, προτάσεις δεκτές φυσικά, ιδιαίτερα αν τις υλοποιήσετε κιόλας ;)

Δώσε αστέρια!

MO: (ψήφοι: 0)