Pré requis
Voici les différentes versions des logiciels utilisés
- Debian : etch
- Noyau 2.6.12-1-k7
- ALSA : 1.0.9b-4
- LIRC : 0.7.1pre2-2
ALSA
Pour installer ALSA sur une debian un coup de google peut aider sinon vous pouvez aller ici La configuration d'ALSA est chargée au démarrage, pas besoin d'ajouter des lignes dans le fichier /etc/modules
LIRC
Avec apt-get :
apt-get install lirc lirc-x
Sélectionner la configuration livedrive_midi lors de l'installation. Pas besoin de compiler des modules supplémentaires, tout est dans le module emu10k1 
Configuration
ALSA
On va permettre au système d'activer l'infra rouge et de démarrer le boitier externe en envoyant un signal sur le périphérique midi /dev/snd/midiC0D1
Créer le fichier /etc/modprobe.d/alsa-custom
Ajouter les lignes suivantes
options snd-emu10k1 index=0 extin=0x3fcf extout=0x1fcf enable_ir=1
Créer un fichier /etc/alsa/modprobe-post-install.d/emu10k1-synth
#!/bin/sh /usr/bin/asfxload /usr/local/lib/sound/midi/*.SF2; echo -e '\360\000\040\041\141\000\000\000\177\000\367' > /dev/snd/midiC0D1
Créer un lien symbolique afin d'éxecuter ces scripts au démarrage
$sudo ln -s /etc/alsa/modprobe-post-install.d/emu10k1-synth /etc/init.d/emu10k1-synth
Créer le lien dans le RC2.d
$sudo update-rc.d emu10k1-synth start 18 2 . Adding system startup for /etc/init.d/emu10k1-synth ... /etc/rc2.d/S18emu10k1-synth -> ../init.d/emu10k1-synth
Attention à la configuration du démarrage, ce script doit être executé avant le démarrage de lircd
LIRC
Dans le fichier /etc/lirc/hardware.conf, initialiser les options de démarrage du démon lircd
LIRCD_ARGS="-d /dev/snd/midiC0D1 -H livedrive_midi"
Dans le fichier /etc/lirc/lirc.conf ajouter la configuration suivante:
begin remote
name rm1500
flags SPACE_ENC|CONST_LENGTH
bits 32
eps 30
aeps 100
header 9000 4500
one 563 1687
zero 563 562
gap 108000
toggle_bit 0
repeat 9000 2250
frequency 38000
duty_cycle 33
begin codes
1 0x83228B74
2 0x83228F70
3 0x8322906F
4 0x83228A75
5 0x8322847B
6 0x83227887
7 0x83228976
8 0x8322837C
9 0x83227788
0 0x8322807F
stop 0x8322857A
play 0x83227986
pause 0x83227986
slow 0x83227D82
step 0x83227E81
prev 0x83227F80
next 0x83227A85
mute 0x83226E91
vol- 0x8322639C
vol+ 0x8322629D
eax 0x83228C73
options 0x8322827D
display 0x83227689
return 0x83228E71
start 0x83228877
close 0x83227C83
up 0x83227B84
down 0x83228D72
left 0x83228778
right 0x8322758A
ok 0x8322817E
power 0x8322619e
cmss 0x8322718e
record 0x8322738c
end codes
end remote
begin remote
name audigy_io_hub
flags SPACE_ENC|CONST_LENGTH
bits 32
eps 30
aeps 100
header 9000 4500
one 563 1687
zero 563 562
gap 108000
toggle_bit 0
repeat 9000 2250
frequency 38000
duty_cycle 33
begin codes
mute 0x80000040
vol+ 0x80008080
vol- 0x80008082
cmss 0x80000080
end codes
end remote
Tester
Redémarrer le pc et tester avec irw , logiquement dans la console, vous devriez retrouver les commandes faites avec la télécommande et les commandes du boitier.
Exemple:
$irw 0000000080008080 00 vol+ LiveDrive 0000000080008080 01 vol+ LiveDrive 0000000080008080 02 vol+ LiveDrive 0000000080008082 00 vol- LiveDrive 0000000080008082 01 vol- LiveDrive 0000000080008082 02 vol- LiveDrive 0000000080008080 00 vol+ LiveDrive 0000000080000080 00 cmss LiveDrive 0000000080000080 00 cmss LiveDrive
Personalisation
Pour personaliser les commandes à effectuer, vous devez créer le fichier $HOME/.lircrc
Exemple d'utilisation avec totem et beep-media-player
begin prog = irexec button = display config = /usr/bin/totem & end begin prog = irexec button = play config = totem --play-pause end begin prog = totem button = eax config = fullscreen end begin prog = totem button = next config = next end begin prog = totem button = prev config = previous end begin prog = totem button = close config = quit end begin prog = irexec button = start config = /usr/bin/beep-media-player -a& end begin prog = irexec button = ok config = /usr/bin/beep-media-player -t& end begin prog = irexec button = down config = /usr/bin/beep-media-player -f& end begin prog = irexec button = up config = /usr/bin/beep-media-player -r& end begin prog = irexec button = vol+ config = /usr/bin/amixer -q set Master,0 5+,5+ end begin prog = irexec button = vol- config = /usr/bin/amixer -q set Master,0 5-,5- end
Configuration de la session utilisateur
Afin que les signaux soient envoyés à lirc, il faut executer en démon le programme irexec. Il faut ajouter dans les paramètres de la session au démarrage la commande:
irexec -d




7 réactions
1 De lol51 - 26/06/2006, 19:01
Merci pour ce billet, il m'a été très utile pour configurer lirc avec mon audigy 2 platinium ex.
A noter que le fichier /etc/modprobe.d/alsa-custom ne fonctionne pas dans mon cas pour démarrer le l'ir sur le boitier, alors je me suis inspiré du code sur www.mail-archive.com/alsa... @ lists.sourceforge.net/msg09267.html pour compiler un programme que je lance au démarrage, et ça marche.
(désolé pour l'adresse elle passe très mal, recopiez l'adresse en enlevant les espaces entre le @)
2 De littlewing - 29/06/2006, 06:58
3 De littlewing - 14/07/2006, 12:34
Bon j ai cree aussi un script execute au lancement du systeme ca devrait mieux aller maitenant.
4 De Martin - 19/07/2006, 14:23
Merci pour ce précieux tuto, et surtout le fameux "echo -e '\360\000\040\041\141\000\000\000\177\000\367' > /dev/snd/midiC0D1", je pouvais bien le chercher celui là
Je signale juste une minuscule erreur, en bas de page il ne s'agit pas de irxec mais irexec. Sinon il existe irxevent aussi.
5 De littlewing - 21/07/2006, 14:52
6 De laurenthendrix - 11/01/2007, 17:33
svp aidez moi jarrive pas a configurer mon midi sur ma audigy zs 2 plat pro... jcomprend rien Svp aidez moi
7 De mas7ro.p!no - 20/07/2008, 02:18
That tutorial is the only that help me! Really thx from Italy =]