Creative X-Fi HD volume Linux alatt

írta: dabadab, 13 éve

1. A probléma

Az X-Fi HD hardvere maga nem tud semmiféle hangerőszabályzást, viszont van rajta egy szép nagy hangerőgomb, amit jó volna használni, de Linux alatt alapesetben abszolút semmit nem csinál.

2. A megoldás

A tekerő USB HID device-ként látszik, a LIRC meg remekül kezel ilyen eszközöket. Nosza!

LIRC konfig:

Az /etc/lirc/hardware.conf-ba:

DRIVER="devinput"
DEVICE="/dev/input/by-id/usb-Creative_Technology_USB_Sound_Blaster_HD_000004Jt-event-if05"

(Ahogy néztem, a hardware.conf formátuma éppen update alatt van, szóval lehet, hogy a megfelelő kulcsszabak a REMOTE_DRIVER és a REMOTE_DEVICE lesznek, de ez úgyis elég feltünő.)

A konkrét device-t mindenki nézze meg magának a /dev/input/by-id könyvtárba (mivel a névben benne van a gyári szám is, ezért mindenkinek más), könnyű lesz megismerni :)

Az /etc/lirc/lircd.conf-ot lecserélni erre a file-ra.

Az /etc/lirc/lircrc-be meg ezt:

# X-Fi HD Volume Knob
begin
prog = irexec
remote = devinput
button = KEY_VOLUMEDOWN
repeat = 1
config = amixer -c HD sset 'PCM' 1-
end

begin
prog = irexec
remote = devinput
button = KEY_MUTE
repeat = 1
config = if [ -n "$(amixer -c HD cget name='PCM Playback Switch' |grep 'values=on')" ] ; then amixer -c HD cset name='PCM Playback Switch' off ; else amixer -c HD cset name='PCM Playback Switch' on ; fi
end

begin
prog = irexec
remote = devinput
button = KEY_VOLUMEUP
repeat = 1
config = amixer -c HD sset 'PCM' 1+
end

Egy /etc/init.d/lirc restart után minden remekül megy.