Chargement...
 
Skip to main content

6 - Le MIDI


MIDI noteoff à travers a2j ou alsa-midi direct

Salut à tous,

Je viens de découvrir un truc bizarre: les signaux MIDI noteoff sont envoyés différemment en passant par a2j ou alsa-midi directement.
Un exemple: dans l'image ci-dessous, j'ai connecté aseqdump à Pure data qui envoie 8 notes, dont la note 0 avec une vélocité de 1, et les notes 8, 16, 24, 32, 40, 48, 56 avec une vélocité de 0, c'est-à-dire Noteoff.
Le port d'entrée 129:11 est une connexion directe alsa-midi (en utilisant par exemple aconnect) alors que le port d'entrée 128:0 est une connexion via a2j, en utilisant
Copy to clipboard
jack_connect 'a2j:Pure data [129] ...' 'a2j:aseqdump ...'

Le graphe de QjackCtl ressemble donc à ça:
2021 04 06 21 41 57 Scrot
Toutes les lignes affichées dans cette fenêtre sont dont reçues en même temps par aseqdump par ces 2 ports:
2021 04 06 21 18 56 Scrot

La différence: les NoteOff envoyés par a2j ont une vélocité, qui plus est non nulle ! Ça ne fait sans doute pas grande différence dans la plupart des cas, mais dans le cas de l'API mini il se trouve que ça en fait une, les LEDs ne s'éteignent pas si la vélocité est non nulle !

Pour info, je lance jack sans pilote midi, parce que j'ai lu sur les forums d'Ardour des commentaires de Paul Davis qui dit que les options -Xseq ou -Xraw introduise une latence inacceptable:
Copy to clipboard
/usr/bin/jackd -P10 -p2048 -dalsa -dhw:UA22 -r48000 -p256 -n3


Je suis très étonné de ne rien trouver à ce sujet en googlant. Est-ce que quelqu'un a un avis là-dessus? J'aimerais beaucoup pouvoir connecter ces clients en Jack-midi (donc via a2j) au lieu de Alsa-midi pour des raisons basiques de préférence de logiciels (et éventuellement de latence) : j'aime bien utiliser njconnect en ncurses, mais il ne supporte pas alsa-midi donc je devrais utiliser naconnect pour le Midi...
Merci !
Il n'y a aucun commentaire pour le moment.