Portál AbcLinuxu, 30. prosince 2025 07:24
// [ 22 ] = 500, /* Display */ [ 27 ] = KEY_AUDIO, /* Audio */ // [ 41 ] = 502, /* Boss Key */ // [ 42 ] = 503, /* Picture in picture */ [ 17 ] = KEY_LAST, /* Last channel */ // [ 37 ] = 505, /* Time Shifting */ // [ 40 ] = 506, /* Snap Shot */ [ 54 ] = KEY_TV, /* TV */ [ 55 ] = KEY_RADIO, /* FM */ [ 56 ] = KEY_DVD, /* DVD */ [ 47 ] = KEY_MODE, /* Menu */ [ 48 ] = KEY_CANCEL, /* C Cancel */ // [ 49 ] = 507, /* Browse channels */ [ 50 ] = KEY_SUBTITLE, /* Subtitles */ [ 51 ] = KEY_LANGUAGE, /* Language */ [ 52 ] = KEY_REWIND, /* Fast rewind */ [ 53 ] = KEY_FORWARD /* Fast forward */a překompiloval, to přidá podporu pro další tlačítka. Já vím není to zrovna korektní způsob a hlavně po změně zdrojových kódů jádra se ztratí. Pak jsem si nainstaloval Lirc (v aktuální verzi 0.7.2).
./configure --with-driver=devinput make make installJako konfigurační soubor lircd.conf jsem použil soubor lircd.conf ze stránek linux.bytesex.org Pak jsem přiřadil příkazy k tlačítkům. To se dělá souborem ~/.lircrc pro usera, nebo globálně v /etc/lircrc Například takto pro tlačítko TV
begin remote = linux-input-layer button = TV prog = irexec repeat = 0 config = xawtv -noxv endDaemon lircd spouštím tímto scriptem po startu počítače.
#!/bin/sh
. /etc/default/lirc
case "$1" in
start)
if [ ! -r /etc/default/lirc ]; then
return 4
fi
if [ -r /etc/lircd.conf ]; then
echo -n "Starting lircd..."
( /usr/sbin/lircd -p 666 -d $DEVICE && echo -n "done. " ) \
|| echo -n "failed! "
else
echo "$0: Missing lircd.conf, aborting!"
fi
if [ -r /etc/lircmd.conf ]; then
echo -n " lircmd..."
( /usr/sbin/lircmd && echo -n "done. " ) \
|| echo -n "failed! "
else
echo -n "$0: Missing lircmd.conf, not started!"
fi
echo
;;
stop)
if [ ! -r /var/run/lircd.pid ]; then
echo "$0: lircd not running!"
return 2
fi
echo -n "Shutting down lircd:"
kill -TERM `cat /var/run/lircd.pid` && echo -n " done."
echo
;;
reload|restart)
echo "$0: lirc restarting..."
$0 stop
$0 start
;;
*)
echo "Usage: $0 start|stop|restart"
return 1
;;
esac
Obsah souboru /etc/default/lirc je následující
DEVICE=/dev/input/event2
číslo zařízení event můžete zjistit pomocí utility lsinput z balíku input-*-*.tar.gz ze stránky CVS snapshots.
Teď už chybí pouze spustit daemona irexec. Já používám KDE. Takže mám v ~/.kde/Autostart script irexec.sh s následujícím obsahem
#!/bin/sh if [ -r /var/run/lircd.pid ]; then echo -n "Starting irexec..." irexec -d && echo -n "done. " fino a to je vše. Jako vodítko mi posložila poslední otázka z FAQ na linux.bytesex.org. JD
? JD
? Locate i slocate taky funguje. Chybka byla , ze podle tveho prispevku jsem hledal ir_common.c , ale ma to byt ir-common.c
. Ale diky, jdu upravovat, kompilovat,nastavovat......
# Leadtek Winfast TV2000XP Expert alias char-major-81 videodev alias char-major-81-0 cx8800
02:08.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
Subsystem: LeadTek Research Inc.: Unknown device 6611
Flags: bus master, medium devsel, latency 32, IRQ 19
Memory at eb000000 (32-bit, non-prefetchable) [size=16M]
Capabilities: [44] Vital Product Data
Capabilities: [4c] Power Management version 2
event mam primo v jadre, pouzivam udev. Co mas za jadro?Ja mam ted 2.6.13.3, v nem to jede rovnou. drive jsem ho patchoval pomoci -mm patche, tam jsou nejake upravy ohledne cx8800 a toho DO.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.