Retrouvez cet article dans : Linux Magazine 83
Redéfinition de commandes
Il est possible de redéfinir l’association des commandes à des événements (si l’association d’origine ne convient pas) ou même de créer des nouvelles associations de commandes... Pour ce faire, il faut redéfinir certains éléments de la tableEVENTS[‘dvd’][‘CH+’] = Event(‘PREV’) EVENTS[‘dvd’][‘CH-’] = Event(‘NEXT’)
Commande au clavier
La commande au clavier est la première à laquelle vous avez été (ou serez) confronté. Si vous avez déjà joué avec Freevo, vous avez pu vous rendre compte d’un petit souci : lorsqu’un programme tel que Xine ou MPlayer est lancé et en premier plan (lecture de vidéo), les commandes au clavier lui sont directement envoyées : Freevo ne les intercepte pas, et l’association commande/événement devient donc inopérante. En dehors de cette particularité, les commandes au clavier fonctionnent bien.Commande par le réseau
Lorsque la variablenc -u localhost 16310 DOWN[^D]DOWN[^D]SELECT[^D]La commande ci-dessus (remplacez bien sûr les chaînes
python2.3 /usr/lib/python2.3/site-packages/freevo/helpers/remote.pyDe la même manière, il est possible de créer toutes sortes de programmes contrôlant Freevo à distance par le réseau (comme cela a été fait avec Freemote, une télécommande par Internet en PHP/MySQL : http://freemote.sourceforge.net/).
Joystick
Le greffonplugin.activate(‘joy’)
JOY_DEV = 1
JOY_CMDS = {
‘up’ : ‘UP’,
‘down’ : ‘DOWN’,
‘left’ : ‘LEFT’,
‘right’ : ‘RIGHT’,
‘button 1’: ‘PLAY’,
‘button 2’: ‘PAUSE’,
‘button 3’: ‘STOP’,
‘button 4’: ‘ENTER’,
}
Télécommande
Last but not least, la télécommande est l’outil de prédilection pour contrôler Freevo. Sous Linux, les télécommandes interagissent avec LIRC, Linux Infrared Remote Control. Ce logiciel supporte globalement tout ce qui peut envoyer ou recevoir des signaux infrarouges ; il supporte à l’origine des émetteurs et récepteurs infrarouges faits main, et permet maintenant également d’utiliser des produits commerciaux, les ports IrDA intégrés, les télécommandes de cartes TV et encore d’autres matériels. Si vous fabriquez vous-même un récepteur, vous pourrez l’utiliser avec n’importe quelle télécommande ; pour plus d’informations sur la fabrication d’un récepteur de télécommande, voir http://www.lirc.org/receivers.html et http://www.lirc.org/html/install.html#testing Avant d’utiliser la télécommande avec Freevo, il faut donc que LIRC soit entièrement fonctionnel. Pour ce faire, je vous renvoie à l’article de Denis Bodor dans GNU/Linux Magazine numéro 72 de mai 2005, avec cependant quelques ajouts :- Si vous possédez une télécommande " commerciale " non gérée par le pilote
lirc_serial, veillez à charger le bon module. Par exemple, pour une ATI Remote Wonder (version I ou II), le modulelirc_atiusb. - Avec ce genre de matériel, l’outil mode2 n’est pas utile : votre signal n’est pas composé d’impulsions infrarouges.
- Concernant les définitions de télécommandes existantes, disponibles dans
/usr/share/lirc/remotes, notez bien que chaque fichier peut contenir plusieurs définitions de télécommandes. Pour les ATI Remote Wonder, plusieurs entrées existent dans le fichier d’exemple, et s’il est repris tel quel, LIRC ne fonctionnera pas : limitez votre fichierlircd.confaux entrées correspondant aux télécommandes installées. - De plus, les définitions existantes ne correspondent pas toujours exactement au matériel que vous avez acheté (changement de composants par le constructeur, mauvaise configuration de la part du fournisseur de la définition... par exemple, la seule définition qui fonctionnait avec ma télécommande ne prenait pas en compte les diagonales du bouton directionnel dédié au contrôle de la souris). Préférez donc, pour un fonctionnement optimal, l’utilisation du logiciel Irrecord, pour coller parfaitement avec votre matériel. Vous pourrez en plus donner le nom que vous voudrez aux différents boutons de la télécommande.
- Lorsque votre télécommande semble bien configurée, utilisez l’outil
irwpour contrôler que tout fonctionne correctement, et que l’ordinateur reçoit bien le signal attendu ; cet outil permet également de vérifier le nom attribué à chacune des touches de la télécommande.
LIRCRC = ‘/home/freevo/.freevo/lircrc’Ensuite, le fichier
begin
prog = freevo
button = UP
config = UP
repeat = 1
delay = 2
end
begin
prog = freevo
button = DOWN
config = DOWN
repeat = 1
delay = 2
end
begin
prog = freevo
button = OK
config = SELECT
end
Les paramètres ircat --config=/home/freevo/.freevo/lircrc freevoChaque appui sur une touche devrait correspondre à l’affichage de la commande correspondante. Si cela fonctionne, il suffit ensuite de (re)démarrer Freevo, et ces paramètres sont pris en compte !
Contrôler la souris avec LIRC
ATI Remote Wonder
Bien que cela n’implique pas directement Freevo, nous allons configurer l’ordinateur pour pouvoir prendre le contrôle de la souris avec la télécommande.
Avant tout, il faut réserver des boutons sur la télécommande pour cet usage ; certaines télécommandes ont des boutons dédiés, c’est le cas des ATI Remote Wonder.
Pour ce faire, le logiciel lircmd (LIRC mouse daemon, http://www.lirc.org/html/configure.html#lircmd.conf) est utilisé. La configuration de lircmd se passe dans le fichier /etc/lirc/lircmd.conf.
Tout d’abord, sous Debian, ce fichier contient une ligne #UNCONFIGURED, qui est à supprimer pour que lircmd puisse être démarré. Ensuite, il faut correctement remplir ce fichier :
PROTOCOL IntelliMouse ACCELERATOR 0 50 10 MOVE_N * MOUSE_UP MOVE_E * MOUSE_RIGHT MOVE_S * MOUSE_DOWN MOVE_W * MOUSE_LEFT BUTTON1_CLICK * MOUSE_BTN_LEFT BUTTON3_CLICK * MOUSE_BTN_RIGHTLa configuration du serveur X est également modifiée, pour accepter les entrées de lircmd :
Section "InputDevice"
Identifier "LIRC Mouse"
Driver "mouse"
Option "Device" "/dev/lircm"
Option "Protocol" "IntelliMouse"
Option "SendCoreEvents"
Option "Buttons" "5"
Option "ZAxisMapping" "4 5"
EndSection
[...]
Section "ServerLayout"
[...]
InputDevice "LIRC Mouse"
[...]
EndSection
Le résultat n’est évidemment pas aussi efficace qu’une souris traditionnelle, mais cela permet de contrôler le curseur de la souris sans quitter le canapé.
Notez cependant que Freevo ne nécessite pas de souris, mais que cette fonctionnalité sera utilisable avec d’autres logiciels ; cela pourra être utile plus tard.
Arrêtons là pour l’instant. Il reste beaucoup de choses à dire sur Freevo, nous y reviendrons le moment venu.
Retrouvez cet article dans : Linux Magazine 83





Donnez votre avis
Vous devez avoir ouvert une session pour écrire un commentaire.