Chargement...
 
Skip to main content

6 - Le MIDI


ports MIDI non reconnus (Ubuntu)

Bonjour,

je n'arrive pas à faire fonctionner les ports MIDI de ma carte M-audio Delta Audiophile 2496 sous Linux (Ubuntu).

Sous ardour, lorsque j'active la synchro MTC ça ne donne rien : impossible de commander l'enregistrement (démarrage/arrêt, reconnaissance du tempo, ...) depuis le sequencer de mon synthé. J'ai joué longuement avec les options, j'ai également essayé de modifier le fichier de config ardour.rc en suivant les indications qu'on trouve sur le site Ardour, mais rien.

J'ai donc installé Rosegarden pour savoir si ça venait d'Ardour. J'ai fait un test (rapide) et apparemment, c'est pareil, les événements MIDI ne sont pas reçus.

J'ai ré-essayé sous vindoze avec Cubase (juste au cas où), et tout fonctionne normalement.

Il doit donc y avoir un problème avec ma configuration sous Ubuntu, mais je ne sais plus trop où chercher.

Voici le résultat de quelques commandes :

$ ls -l /dev/snd/midi*

crw-rw---- 1 root audio 116, 8 2006-02-18 17:17 /dev/snd/midiC0D0
crw-rw---- 1 root audio 116, 40 2006-02-18 17:17 /dev/snd/midiC1D0

$ lsmod|grep 'midi'

snd_seq_midi 8608 0
snd_rawmidi 22816 2 snd_mpu401_uart,snd_seq_midi
snd_seq_midi_event 6656 2 snd_seq_oss,snd_seq_midi
snd_seq 44688 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_seq_device 8204 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
snd 48644 17 snd_mpu401,snd_ice1712,snd_ak4xxx_adda,snd_cs8427,snd_ac97_codec,s nd_pcm_oss,snd_mixer_oss,snd_pcm,snd_i2c,snd_mpu401_uart,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer, snd_seq_device

ALSA et Jack fonctionnent a priori normalement. D'ailleurs, lorsque je lance Ardour, dans qjackctl j'arrive bien à connecter le port MIDI de ma carte au sequencer d'Ardour, mais ça ne sert à rien.

Pour finir, d'après ce qu'on lit un peu partout, ma carte (Audiophile 2496) est bien reconnue sous Linux, donc je ne pense pas qu'il faille chercher dans cette direction. D'ailleurs, au passage, elle fonctionne impec pour l'audio.


Merci.
France
Je n'utilise pas la syncro, as tu essayé dans l'autre sens, cad demarrer le sequenceur du synthé depuis ardour ?

Je sais que sur la liste d'Ardour, il y a des fois messages a ce sujet, comme quoi ca ne fonctionne pas toujours dans les 2 sens.

Regarde dans les options d'ardour, la page de notre site, tu as la possibilité de debugger les messages midi.

Lance ardour depuis la console et tu devrais les voir apparaitre, ce qui te confirmerais que ce n'est pas un probleme avec ta carte son, mais avec ardour.
France
crw-rw---- 1 root audio 116, 8 2006-02-18 17:17 /dev/snd/midiC0D0
crw-rw---- 1 root audio 116, 40 2006-02-18 17:17 /dev/snd/midiC1D0

Ca signifie que tu as 2 cartes midi reconnues..

que donne cat /proc/asound/cards ?

PS: ton utilisateur appartient-il bien au groupe audio ? tapes groups ca doit te le dire...
D'abord, merci pour ton aide !

Je vais te répondre dans le désordre...


Je n'ai qu'une carte son : la Delta Audiophile. Il y a aussi un soundchip intégré à ma carte mère (A7N8X Deluxe), mais je l'ai désactivé dans le BIOS.

Par contre, j'ai lu quelque part que les cartes à base de chip Envy24 comme la mienne possèdent 2 circuits : un circuit pro destiné aux applications musicales, et un circuit grand public pour le reste... mais je n'en sais pas plus.


$ cat /proc/asound/cards

0 M2496: ICE1712 - M Audio Audiophile 24/96
M Audio Audiophile 24/96 at 0xa400, irq 17
1 UART: MPU-401 UART - MPU-401 UART
MPU-401 UART at 0x330, irq 10

J'ai cru comprendre que MPU-401 UART est un driver générique. Je ne sais pas trop s'il est utilisé. De toute façon, j'ai pas mal joué avec les options de Ardour, et j'ai essayé tous les ports MIDI disponibles, sans succès.


Autrement, j'appartiens bien au groupe audio.


Enfin, je n'ai pas testé le contrôle du sequencer depuis Ardour. Je le ferai à l'occasion (pas tout de suite car ça m'oblige à faire quelques changements dans mes connections MIDI). Quant aux messages d'erreur, le lanceur que j'utilise me permets déjà de les voir. D'ailleurs ça m'avait aidé à éliminer quelques problèmes au départ, mais maintenant qu'il n'y a plus aucun message d'erreur, je ne sais plus où chercher.

De toute façon, puisque soundgarden n'a pas l'air de recevoir les messages MIDI non plus, je pense que le problème ne se situe pas dans la config d'Ardour, mais plutôt dans la configuration de mes ports MIDI. Peut-on modifier manuellement certains fichiers de config ? Y a-t-il des outils qui permettent de choisir des options en fonction de son matériel... ?

France
Re, d'après les logs que tu donnes, tu as une carte détéctée sur l'IRQ10 en plus de ta delta.
tu peux utiliser la commande lspci -v et regader à quoi correspond cette IRQ10. Peutetre que la carte mere incorpore aussi un port midi, et qu'il n'est pas désactivé.

Quoi qu'il en soit ca ne devrait pas poser de probleme particulier d'avoir plusieurs ports midi.

Pour info le port midi de ta carte Maudio est, tu l'avais sans doute deviné, dev/snd/midiC0D0. L'autre, C1D0, est celui de la carte MPU401

Moi aussi j'ai une carte ICE1712, une terratec EWS88mt, et il y a un test tres simple pour voir si le midi fonctionne. Essayes de faire pareil, tape dans un terminal:

cat /dev/snd/midiC0D0

Maintenant si ton clavier midi est branché sur le midi-IN de ta carte. A chaque fois que tu joue une note du clavier, tu dois voir apparaitre des caracteres ASCII.

Si ca marche tu peux interrompre avec CTRL+C

Si ca marche pas, alors il y a probleme mais je ne sais pas ce que c'est. A partir du moment ou il n'y a pas d'erreur de choix sur le device ca devrait fonctionner... Il n'y a pas grand chose à configurer.

PS: oui les cartes ICE1712 ont un deuxieme circuit "consummer", mais ca n'influe pas sur le midi. Perso je ne l'utilise jamais.











France
PS2: pour ardour c'est à la page Option, l'onglet MIDI, tu as les ports midi. Il faut verifier qu'ils soient Online et ensuite tu as les options "Trace input" et "Trace output" qui permettent d'afficher dans la console où tu a lancé ardour, les messages MIDI en provenance ou a destination de ton séquenceur externe.
- Aucune de trace de l'IRQ 10 ni de MPU-401 UART avec la commande lspci.

- La commande cat /dev/snd/midiC0D0 réagit bien aux événements MIDI. C'est donc que le MIDI est reconnu par le système, ça me rassure déjà. Merci pour le tuyau !

- Sous ardour, ça ne fonctionne toujours pas. J'ai testé à nouveau différentes options, mais rien à faire. Par contre, en activant Trace input, les messages MIDI du sequencer (de mon synthé) arrivent bien sur la fenêtre xterm. Je ne comprends pas pourquoi Ardour n'en tient pas compte. Il y a peut-être quand même un paramétrage qui m'échappe...

Dans Ardour, je clique sur le bouton d'enregistrement, et lorsque je démarre le sequencer (du synthé), Ardour ne démarre pas. Lorsque je fais un reset sur le sequencer, ça ne faire rien non plus dans Ardour. Le tempo n'est même pas reconnu automatiquement, vraiment rien quoi.

Dans l'onglet Synchronization, j'ai choisi Slave to MTC. Dans l'onglet MIDI, je coche MTC en face du port MIDI qui correspond à la Delta. Ce port est bien online... je ne vois pas ce qu'il manque. Peut-être une option dans le projet ?


Je viens de réessayer Rosegarden, les événements MIDI classiques (notes, ...) sont bien enregistrés. Par contre, pas de synchro MTC a priori, mais je ne sais pas si Rosegarden est vraiment capable de se synchroniser avec une source externe (les options à ce sujet sont moins clairs que dans Ardour).