Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
xbmc_avec_evrouter [Le 27/12/2009, 23:43] – créée (déplacée de xmbc_avec_evrouter) 213.95.41.13xbmc_avec_evrouter [Le 13/06/2010, 11:30] (Version actuelle) 82.232.83.93
Ligne 1: Ligne 1:
 +====== Piloter xbmc avec une télécommande USB (HID) ======
 +===== xbmc, prérequis =====
 +[[:xbmc|xbmc]] est un logiciel afin de transformer votre ordinateur en [[:media_center|media center]]. Afin de piloter ce type de software, il est possible d'utiliser des claviers ou télécommandes. Un problème survenant assez souvent est l'absence de correspondance entre les touches permettant de naviguer à travers xbmc et les touches de votre télécommande. Cet article décrit donc les différentes étapes nécessaires pour utiliser un périphérique HID avec xbmc (ou tout autre logiciel media center).
 +===== Utilisation d'un autre périphérique HID =====
 +Afin de pouvoir naviguer à travers xbmc en utilisant autre chose qu'un clavier (télécommande ou autre périphérique HID), il est nécessaire de remapper les touches de votre matériel HID pour qu'elles puissent correspondre à celles de xbmc [[http://manuel.xbmc.fr/index.php?title=Contr%C3%B4les_Clavier|(liste ici)]].
  
 +===== Désactiver les raccourcis multimédias d'Ubuntu =====
 +Nombreuses télécommandes ou autres périphériques ont des touches multimédia qu'Ubuntu utilise directement (tel qu'augmenter/diminuer le son) et qui sont aussi utilisés par xbmc.
 +Afin de les désactiver, allez dans Système > Préférences > Raccourcis clavier et désactivez tous les raccourcis "sons"
 +
 +===== Installer evrouter =====
 +xbindkeys ne permettant pas de capturer les évènements HID lorsqu'xbmc est en plein écran, nous utiliserons [[http://www.bedroomlan.org/projects/evrouter|evrouter]].
 +Pour l'installer (32bits):
 +<code>wget http://debian.bedroomlan.org/debian/pool/main/e/evrouter/evrouter_0.4_i386.deb
 +sudo dpkg -i evrouter_0.4_i386.deb</code>
 +
 +===== Capture d'évènements HID =====
 +Une fois evrouter installé, il vous faut déterminer où se situe votre périphérique HID dans **/dev/input/by-id/**. Attention, pour un périphérique HID peut se trouver plusieurs input devices. Ceci est expliqué par la présence de deux parties (par exemple un clavier normal & un clavier multimedia) lors de l'énumération HID du périphérique. Il vous faudra donc effectuer l'opération décrite ci dessous plusieurs fois.
 +Maintenant il s'agit de détecter les touches de votre périphérique:
 +<code>evrouter -d /dev/input/by-id/votre_input_device</code>
 +Pour chaque touche pressée, vous obtiendrez une sortie que vous devrez noter du genre:
 +<note>"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/115 "fill this in!"</note>
 +===== Créer le fichier de configuration evrouter =====
 +Une fois toutes les touches déterminées, créez un fichier **.evrouterrc** situé dans votre home. Puis, avec l'éditeur texte de votre choix, remplissez le de cette manière (**avec les informations que vous aurez trouvé au paragraphe précédent**):
 +<code>#Vol up
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/115 "XKey/+"
 +#vol down
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/114 "XKey/-"
 +#play
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/207 "XKey/p"
 +#prev
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/168 "XKey/r"
 +#next
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/208 "XKey/f"
 +#stop
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/166 "XKey/x"
 +#pause
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/119 "XKey/space"
 +#info
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/130 "XKey/m"
 +#list
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/362 "XKey/Tab"
 +#prev2
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/165 "XKey/comma"
 +#next2
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/163 "XKey/semicolon"
 +#page down
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/403 "XKey/KP_Down"
 +#page up
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/402 "XKey/KP_Up"
 +#return
 +"Chicony USB Wireless HID Receiver" "/dev/input/by-id/usb-Chicony_USB_Wireless_HID_Receiver-event-joystick" none key/158 "XKey/BackSpace"
 +</code>
 +Remarquez à la fin de chaque ligne le **XKey/**. En effet, evrouter permet d'effectuer plusieurs actions lorsque la touche spécifiée est appuyée (man evrouter pour plus de détails). La commande XKey/ permet de simuler l'appui d'une touche de clavier. Pour obtenir la liste des touches disponibles:
 +<code>xmodmap -pk</code>
 +Le fichier type situé ci dessus vous donne un exemple de mapping entres les touches d'une télécommande et les touches reconnues par xbmc.
 +===== Lancement d'evrouter au démarrage =====
 +evrouter nécessite les droits **sudo** pour fonctionner. Une solution possible consiste à ajouter evrouter au fichier sudoers:
 +<code>sudo visudo</code>
 +dans le fichier affiché, ajoutez:
 +<code>votre_nom_dutilisateur ALL=NOPASSWD: /usr/bin/evrouter</code>
 +Ceci effectué, il ne vous reste plus qu'à ajouter evrouter aux programmes lancés au démarrage (avec xbmc). Pour ceci, allez dans Système > Préférences > Applications au démarrage. Ajoutez une entrée nommée evrouter, avec pour commande
 +<code>evrouter /dev/input/by-id/votre_peripherique1 /dev/input/by-id/votre_peripherique2 ... </code>
 +Validez, déloguez puis reloguez vous.♠