Lire les fichiers MIDI et les enregistrer en Audio sous GNU/Linux, avec quelles applications libres ?

Les distributions GNU/Linux sont d’excellents systèmes d’exploitation pour la gestion du MIDI, en ligne de commande ou comme ici avec une interface graphique utilisateur (GUI)

Le Musical Instrument Digital Interface ou MIDI est

  • un protocole de communication électronique et
  • un format de fichier (.mid, .kar et autres) dédiés à la musique,
  • et utilisé pour la communication entre instruments électroniques, contrôleurs, séquenceurs, et logiciels de musique.

Si vous n’êtes pas familier avec le MIDI, consultez les liens suivants :

Le MIDI (Musical Instrument Digital Interface) est utilisé pour la MAO (Musique assistée par ordinateur) et d’autres applications

Dans cet article, nous nous intéresserons aux applications libres ayant une interface graphique (GUI) conviviale qui permettent de lire-jouer simplement des fichiers MIDI (SMF), au format Type 0 (monopiste et multicanal) et Type 1 (multipiste et multicanal) avec des extensions .mid et .kar, quelle que soit la distribution GNU/Linux utilisée.
Certaines applications offrent des possibilités supplémentaires comme la conversion d’un fichier MIDI en fichier Audio (avec différents formats conteneurs WAV, AIFF, MP3, OGG, FLAC).

Il existe aussi des applications libres en ligne de commande à exécuter dans un terminal, par exemple :

  • Timidity++ – qui peut aussi avoir une interface graphique mais peu conviviale – Arch LinuxDebianUbuntu
  • FluidSynth – lui préférer ‘Qsynth’ avec son GUI (voir plus bas)
  • aplaymidi – Utilitaire qui lit le ou les fichiers MIDI spécifiés sur un ou plusieurs ports de séquenceur ALSA – Arch LinuxDebian –  Ubuntu1Ubuntu 2
  • pmidi – Lecteur de fichiers MIDI pour ALSA – Ubuntu
  • mais elles ne seront pas traitées dans cet article, visitez leurs sites web.

Pour les musiciens libristes plus expérimentés désirant beaucoup plus de possibilités sous GNU/Linux, il existe bien entendu des Séquenceurs MIDI-Audio et des Stations de travail Audio numérique (STAN – DAW), par exemple :

  • Ardour – DAW complet mais aussi le plus compliqué pour GNU/Linux, macOS et Windows
  • LMMS – Linux MultiMedia Studio pour GNU/Linux, macOS et Windows
  • MuseScore – Créer, écouter et imprimer des partitions pour GNU/Linux, macOS et Windows
  • MusE Sequencer – Séquenceur MIDI & Audio pour GNU/Linux
  • QTractor – Séquenceur MIDI & Audio pour GNU/Linux
  • Rosegarden – Séquenceur MIDI & Audio pour GNU/Linux
  • mais ils sortent du cadre cet article, visitez leurs sites web.

♦ LECTEURS libres avec GUI de fichiers MIDI sous GNU/Linux

Revenons à notre objectif. Nous avons besoin au minimum :

  • d’un lecteur de fichiers MIDI traité dans cet article comme :
    1. VLC Multimedia Player,
    2. Audacious Media Player,
    3. Audacity,
    4. DrumStick MIDI Player, ou
    5. SMS – Simple MIDI Sequencer,
  • d’une fonte sonore (SoundFont) logicielle composée d’instruments de musique virtuels ou d’un synthétiseur (logiciel ou matériel) comme :
    • FluidR3_GM.sf2,
    • Sonivox EAS, etc., et
  • d’un greffon (plugin) FluidSynth ou similaire, ou d’utilitaires plus polyvalents comme :
    • vlc-plugin-fluidsynth (VLC),
    • AMIDI-Plug (Audacious),
    • QJackCtl, QSynth, etc.

Késako ALSA / JACK ?

ALSA = Advanced Linux Sound Architecture est un ensemble de logiciels incorporés au noyau Linux fournissant une interface (API) pour les pilotes de cartes son. ALSA gère la configuration automatique des cartes son et de nombreux périphériques Audio.
Les serveurs de son PulseAudio et JACK fonctionnent par dessus ALSA et les pilotes de cartes son implémentés. Sur les systèmes GNU/Linux, ALSA a succédé à l’ancien Open Sound System (OSS).

JACK = JACK Audio Connection Kit est un serveur de son professionnel qui fournit des connexions en temps réel à faible latence pour les données Audio et MIDI entre les applications. JACK est un élément clé de l’infrastructure et le standard de facto des logiciels Audio professionnels sous GNU/Linux depuis sa création en 2002.
JACK fournit une infrastructure de base permettant aux applications Audio de communiquer entre elles et avec le matériel Audio. Grâce à JACK, les utilisateurs peuvent construire des systèmes puissants pour le traitement du signal et la production musicale.

Fonctionnement schématique de la chaîne MIDI/Audio ALSA/JACK sous GNU/Linux

Installation d’une SoundFont – à faire en premier

La plupart des distributions GNU/Linux propose au moins une fonte sonore de qualité dans leurs logithèques. La plus connue est sûrement la SoundFont SF2 FluidR3_GM.sf2 qui pèse environ 150 Mo installée. Après installation, nous la retrouvons sous Debian / Ubuntu / Linux Mint et dérivées dans le dossier système /usr/share/sounds/sf2/ et sous Arch Linux / Manjaro et dérivées dans /usr/share/soundfonts/.
Les principales fontes sonores sont aux formats :
– SF2 (SoundFont Bank v.2) avec des échantillons d’instruments au format WAV (Microsoft), et
– SF3 (SoundFont Bank v.3) avec des échantillons d’instruments au format  libre OGG (Vorbis).

Exemples d’installation de SoundFonts sous Linux Mint 20

En fonction des goûts et besoins de chacun-e, d’autres fontes sonores MIDI libres et de qualité (normes GM1-GM2 ou XG1-XG2-XG3, à éviter GS) peuvent être téléchargées depuis le web et mis dans le dossier de votre choix, de préférence dans votre dossier /home (utilisateur). Certaines soundfonts .SF2 de qualité peuvent peser jusqu’à 2 Go mais près de 10 fois moins en .SF3 pour la même fonte sonore.
Voici quels liens utiles de téléchargement :
Free Audio Data [Linux-Sound] – Linux Audio Wiki
Banques de sons (SoundFonts) / SoundFonts et fichiers SFZ – MuseScore Wiki
SoundFonts – FluidSynth Wiki
– Et bien d’autres sur le web.

1- VLC Multimedia Player – le couteau suisse du Multimédia (Audio – Vidéo – Streaming)

VLC lit les fichiers MIDI grâce au plugin vlc-plugin-fluidsynth à installer depuis la logithèque de votre distribution et une fonte sonore SF2 (par exemple la fluid-soundfont-gm plus haut d’~ 150 Mo) qui convertit les messages MIDI en Audio.
VLC permet aussi d’enregistrer/convertir les fichiers MIDI en fichiers Audio, voir plus bas.
Par défaut, VLC utilise l’Audio ALSA.

À installer depuis la logithèque de votre distribution
  • VLC v.3.0.9.2 + vlc-plugin-fluidsynth sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées
  • VLC v.3.0.11.1 + vlc-plugin-fluidsynth sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées

Lecture de fichiers MIDI avec VLC sous Manjaro Linux 20

Configuration lecture MIDI de VLC
  • Menu principal -> Outils -> Préférences
  • Fenêtre Préférences simples -> Afficher les paramètres -> Tous
  • Fenêtre Préférences avancées -> Entrée / Codecs / +Codecs Audio -> FluidSynth
  • Fenêtre Synthétiseur MIDI FluidSynth -> Fichier SoundFont -> Parcourir…
  • Fenêtre Sélectionner un fichier -> Naviguer jusqu’au dossier où est stocké la SoundFont -> La sélectionner -> Valider
  • Fenêtre Synthétiseur MIDI FluidSynth -> Finir le paramétrage de la SoundFont -> Enregistrer
  • VLC est maintenant prête à lire – jouer les fichiers MIDI (SMF).

Avec VLC il y a plusieurs possibilités pour enregistrer/convertir un fichier MIDI dans/en un fichier Audio.
Après avoir correctement configuré VLC comme ci-dessus, le plus simple est :
-> Menu principal de VLC -> Média -> Convertir/Enregistrer…
-> Fenêtre Ouvrir un média -> Onglet Fichier -> Bouton +Add… ou +Ajouter…
-> Naviguer dans le-les dossiers puis sélectionner le-les fichiers MIDI désirés
-> Bouton Convertir/Enregistrer -> Convertir
-> Fenêtre Convertir -> Paramètres/Convertir/Profil = Choix du codage Audio -> Destination/Fichiers de destination = nom.ext du fichier Audio [Parcourir…] NB: Si Affiche le flux de sortie est coché, la conversion se fait tout en lisant-écoutant le fichier MIDI (temps de conversion = durée du fichier MIDI). Si ce n’est pas le cas, la conversion (muette) se fait directement (temps de conversion = beaucoup plus court).
-> Puis, cliquer sur le bouton Démarrer qui lance la conversion du fichier MIDI (lu avec la fonte sonore préalablement sélectionnée) => fichier Audio (ALSA).
Une fois l’opération terminée, vous pouvez lire ce fichier Audio avec VLC ou un autre lecteur Audio.

2- AUDACIOUS Media Player – Un lecteur Audio multiformat

ADACIOUS lit les fichiers MIDI grâce à son greffon intégré AMIDI-Plug et une fonte sonore SF2 (par exemple la fluid-soundfont-gm plus haut d’~ 150 Mo) qui convertit les notes MIDI en Audio.
Audacious permet aussi d’enregistrer/convertir les fichiers MIDI en fichiers Audio grâce à son greffon intégré FileWriter, voir plus bas.
Par défaut, Audacious utilise l’Audio ALSA.

À installer depuis la logithèque de votre distribution
  • Audacious v.3.10.1 sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées
  • Audacious v.4.0.5 sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées

Lecture de fichiers MIDI avec AUDACIOUS sous Manjaro Linux 20

Configuration lecture MIDI de AUDACIOUS
  • Menu principal -> Fichier -> Paramètres…
  • Greffons -> Onglet Entrée -> Sélectionner AMIDI-Plug (Lecteur MIDI) -> Paramètres
  • Fenêtre AMIDI-Plug -> Bouton + -> Naviguer jusqu’au dossier où est stocké la SoundFont -> La sélectionner -> Valider
  • Fenêtre AMIDI-Plug -> Finir le paramétrage de la SoundFont -> 2x Fermer
  • AUDACIOUS est maintenant prête à lire – jouer les fichiers MIDI (SMF).

Configuration de Audacious pour convertir les fichiers MIDI et les enregistrer dans des fichiers Audio :
– Menu principal -> Fichiers -> Paramètres…
-> Audio -> Paramètres d’enregistrement = à cocher √
-> Paramètres -> Greffon FileWriter -> Onglet Général -> Format du fichier de sortie = WAV, MP3, Vorbis ou FLAC
-> Choisir entre Enregistrer dans le répertoire d’origine (celui du fichier MIDI) ou Enregistrer dans un répertoire personnalisé (chemin à entrer)
-> Générer (automatiquement) le nom de fichier (Audio) à partir de = 3 choix possibles
-> Onglets MP3 et/ou Vorbis -> Définir les paramètres pour ces 2 formats. Pour WAV et FLAC, ce sont des paramètres par défaut qui sont utilisés.
-> Bouton Fermer.

Conversion d’un fichier MIDI en un fichier Audio avec Audacious :
-> Ouvrir un fichier MIDI -> Appuyer sur le bouton Enregistrer le flux -> Appuyer sur le bouton Lire -> Écouter la lecture du fichier MIDI -> Après l’arrêt automatique de la lecture -> Appuyer à nouveau sur le bouton Enregistrer le flux.
Le fichier Audio nom.ext se trouve dans le répertoire que vous avez défini précédemment. Il suffit de l’ouvrir avec Audacious pour le lire. Vous pouvez aussi lire ce fichier Audio avec VLC, Audacity ou un autre lecteur Audio.

3- AUDACITY – Un éditeur et enregistreur Audio multipiste

Après importation (Menu -> Fichier -> Importer -> MIDI…), AUDACITY affiche dans une fenêtre PianoRoll et lit les fichiers MIDI. Si nécessaire, ils peuvent être édités par couper-coller puis ré-exporter au format MIDI.
Audacity ne permet pas (encore) d’enregistrer directement les fichiers MIDI en fichiers Audio, voir MIDI in Audacity Wiki.

Astuce : Lorsque Audacity est utilisée en tant qu’enregistreur Audio les possibilités du Gestionnaire Audio de la distribution peuvent être incomplètes-limitées. L’installation et l’utilisation de l’utilitaire Contrôle du volume PulseAudio (Pavucontrol) permet d’avoir un accès plus complet aux entrées/sorties (non disponibles autrement) de votre carte Audio, aussi bien pour les périphériques matériels que pour chacun des flux séparément. De plus, il permet de rediriger un flux de sortie vers un autre périphérique de sortie sans interrompre la diffusion Audio.

Dans la configuration présentée ici, Audacity utilise le MIDI ALSA et l’Audio JACK.

À installer depuis la logithèque de votre distribution
  • Audacity v.2.3.3 sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées
  • Audacity v.2.4.1 sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées
  • QJackCtl v.0.5.0 ou 0.6.3 -et- QSynth v.0.6.1 ou 0.6.3
    sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées -ou- sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées

Lecture de fichiers MIDI avec AUDACITY (plein écran) sous Manjaro Linux 20

La configuration d’Audacity pour la lecture de fichiers MIDI est plus complexe que celle de VLC ou d’Audacious. L’avantage d’Audacity par rapport aux deux lecteurs précédents est sa faculté à afficher le fichier MIDI importé puis lu sous la forme d’un PianoRoll (éditable en partie).

Ordre de lancement des applications
  1. QJackCtl -> puis cliquer sur le bouton Démarrer le serveur, si pas fait automatiquement
  2. QSynth -> charge en RAM la-les fonte-s sonore-s
  3. Audacity -> prête à l’emploi
Configuration lecture MIDI de QJackCtl, QSynth et Audacity
  • QJackCtl -> Bouton Réglages…
    • Si l’installation de l’application s’est bien déroulée, les réglages par défaut : Pilote = Alsa, √ Temps réel, Interface = (default), etc. devraient convenir
  • QSynth -> Bouton Configuration…
    • -> Onglet MIDI -> √ Activer l’entrée MIDI -> Pilote MIDI = alsa_seq -> etc…
    • -> Onglet Audio -> Pilote Audio = jack -> etc…
    • -> Onglet Banque de sons -> Ajouter une fonte sonore SF2/SF3 présente sur votre PC
    • -> OK
  • Audacity -> Menu -> Édition -> Préférences…
    • -> Périphériques -> Interface Hôte = JACK Audio Connection Kit sur PortAudio, etc.
    • -> Périphériques MIDI -> Interface Hôte = ALSA sur PortAudio / -> Lecture Périphérique = Synth input port (QSynth)
    • -> Valider
  • AUDACITY est maintenant prête à lire – jouer – afficher les fichiers MIDI (SMF).

Configuration ALSA/JACK pour la lecture de fichiers MIDI avec AUDACITY sous Manjaro Linux 20

Nota bene : Audacity utilise l’API PortAudio. Cet API apparaît correctement dans les patchbays comme QJackCtl et Patchage pour l’Audio JACK mais pas pour le MIDI ALSA. De ce fait, le paramétrage MIDI ALSA d’Audacity ne peut se faire que dans l’application elle-même.

4- DrumStick MIDI Player / Un lecteur simple de fichiers MIDI

DrumStick MIDI Player (DMP) lit directement les fichiers MIDI après connexion de sa sortie MIDI ALSA vers l’entrée MIDI ALSA d’un synthétiseur matériel ou logiciel sur la sortie duquel nous pourrons récupérer l’Audio soit en ALSA soit en JACK. Grâce à cette connexion, les messages MIDI du fichier lu peuvent être redirigés vers bon nombre de logiciels ou matériels MIDI.
DMP, de part sa nature, ne peut pas enregistrer/convertir directement un fichier MIDI dans-en un fichier Audio. Pour ce faire, il faut utiliser une application Audio tierce comme Audacity couplée avec ce lecteur MIDI.

a- Version MIDI ALSA + SoundFont Sonivox EAS, intégrée à VMPK – Virtual MIDI Piano Keyboard, avec Audio ALSA

C’est la configuration la plus simple d’utilisation de DMP.
En prime, VMPK offre l’affichage en temps réel sur son clavier virtuel des notes MIDI lues par DMP avec une couleur par canal MIDI et l’intensité des couleurs qui varient au rythme de la vélocité des notes (à paramétrer dans les Préférences de VMPK). L’affichage des notes MIDI peut se faire pour un seul canal que l’utilisateur choisi (dans le bandeau) ou pour l’ensemble des canaux (Mode MIDI Omni).

À installer depuis la logithèque de votre distribution
  • DMP v.1.1.3 -et- VMPK v.0.7.2
    sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées -et- sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées

Lecture de fichiers MIDI avec DrumStick MIDI Player et VMPK qui affichage les notes MIDI lues + SoundFont Sonivox EAS intégrée sous Manjaro Linux 20

Configuration lecture MIDI de DMP et VMPK
  • DMP -> Menu -> File -> MIDI Setup -> Output port -> VMPK Input -> OK
  • VMPK -> Menu -> Éditer -> Connexions MIDI -> Voir la fenêtre Paramètres MIDI dans la capture d’écran ci-dessus -> OK
  • DMP et VMPK sont maintenant prêtes à lire – jouer – afficher les fichiers MIDI (SMF).

b- Version MIDI ALSA + Audio JACK

Cette configuration d’utilisation de DMP est un peu plus complexe mais elle permet d’utiliser la fonte sonore (après installation) de son choix qui va être gérée par QSynth, ainsi que d’avoir un son Audio de meilleure qualité avec QJackCtl qui est moins sensible aux aléas du système (JACK a la priorité la plus haute) que l’Audio ALSA.

À installer depuis la logithèque de votre distribution
  • DMP v.1.1.3 -et- VMPK v.0.7.2
    sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées -et- sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées
  • QJackCtl v.0.5.0 ou 0.6.3, QSynth v.0.6.1 ou 0.6.3
    sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées -ou- sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées

Lecture de fichiers MIDI avec DrumStick MIDI Player et QJackCtl (serveur Audio JACK) + QSynth (gestion de SoundFonts) + VMPK (affiche les notes MIDI lues) sous Manjaro Linux 20

Ordre de lancement des applications
  1. QJackCtl -> puis cliquer sur le bouton Démarrer le serveur, si pas fait automatiquement
  2. QSynth -> charge en RAM la-les fonte-s sonore-s
  3. DMP -> prête à l’emploi
  4. VMPK -> prête à l’emploi
Configuration lecture MIDI de QJackCtl, QSynth, DMP et VMPK
  • QJackCtl -> Bouton Réglages…
    • Si l’installation de l’application s’est bien déroulée, les réglages par défaut : Pilote = Alsa, √ Temps réel, Interface = (default), etc. devraient convenir
  • QSynth -> Bouton Configuration…
    • -> Onglet MIDI -> √ Activer l’entrée MIDI -> Pilote MIDI = alsa_seq -> etc…
    • -> Onglet Audio -> Pilote Audio = jack -> etc…
    • -> Onglet Banque de sons -> Ajouter une fonte sonore SF2/SF3 présente sur votre PC
    • -> OK
  • DMP -> Menu -> File -> MIDI Setup -> Output port -> VMPK Input -> OK
  • VMPK -> Menu -> Éditer -> Connexions MIDI -> Fenêtre Paramètres MIDI
    • -> Cocher : Activer l’entrée MIDI, Mode MIDI Omni et Activer MIDI Thru sur la sortie MIDI
    • -> Pilote MIDI In = ALSA, -> Connexion du port d’entrée MIDI = MIDI Player
    • -> Pilote MIDI Out = ALSA, -> Connexion du port de sortie = Fluid Synth (QSynth)
    • -> OK
    • Astuce : Ce paramétrage peut aussi se faire graphiquement dans la fenêtre Graphe ou Connecter de QJackCtl

5- Simple MIDI Sequencer – SMS / Un séquenceur MIDI-Audio simple (Home Studio DIY)

SMS lit directement les fichiers MIDI après connexion de sa sortie MIDI ALSA vers l’entrée MIDI ALSA d’un synthétiseur logiciel ou matériel. Grâce à cette connexion, les messages MIDI du fichier lu peuvent être redirigés vers bon nombre de logiciels ou matériels MIDI.
Parmi d’autres possibilités, SMS permet aussi d’enregistrer/convertir directement les fichiers MIDI lus en fichiers Audio (.ogg, .wav, .aif) et de les relire, voir plus bas.
Dans la configuration présentée ici, SMS utilise le MIDI ALSA et l’Audio JACK.

Nota bene : Pour utiliser SMS, il faut au préalable installer l’environnement de développement Purr Data v.2.13.0 (Pd-L2Ork v.2) ou ultérieure. Purr Data est un fork amélioré du populaire Pure Data Vanilla. Purr Data v.2.14.0 sera publiée courant septembre 2020 et offrira de multiples nouveautés.

Voir les instructions d’installation sur la page dédiée à SMS
  • Purr Data v.2.13.0 ou ultérieure sous GNU/Linux, macOS ou Windows
  • SMS v.0.2.21 ou ultérieure sous GNU/Linux, macOS ou Windows
À installer depuis la logithèque de votre distribution
  • QJackCtl v.0.5.0 ou 0.6.3, QSynth v.0.6.1 ou 0.6.3, VMPK v.0.7.2 et JMeters v.0.4.5
    sous Linux Mint 20 / Ubuntu 20.04 / Debian 10 et dérivées -ou- sous Manjaro 20.1 (rolling release) / Arch Linux et dérivées

Lecture de fichiers MIDI avec Simple MIDI Sequencer et QJackCtl (serveur Audio JACK) + QSynth (gestion de SoundFonts) + VMPK (affiche les notes MIDI lues) + JMeters (affiche niveaux Audio JACK) sous Manjaro Linux 20 (Bureau n° 1)

Ici Simple MIDI Sequencer utilise qu’une partie de ses possibilités MIDI-Audio ; à savoir : lire un fichier MIDI avec le module MIDI Sequencer & Player, afficher les messages MIDI dans le module MIDI & Sequencer Activity (commutateur auto MIDI Source = OUT), et afficher les sorties Audio JACK de la fonte sonore dans le module Audio/Voice Recorder & Player (commutateur ioMONI = Y).

Pendant la lecture d’un fichier MIDI, vous pouvez changer en temps réel l’instrument utilisé pour chaque canal en ouvrant dans QSynth avec le bouton Canaux la fenêtre de la fonte sonore en cours d’utilisation. Puis, il suffit de double cliquer sur la ligne désirée, de changer de n° de banque et de n° de programme qui affiche le nom de l’instrument, et de valider par OK. Et, le nouvel instrument retentit.

Avec SMS pour convertir un fichier MIDI préalablement chargé dans le module MIDI Sequencer & Player et l’enregistrer dans un fichier Audio,
il suffit de faire dans le Module Audio/Voice Recorder & Player :
-> commutateur FILE Type = ogg ou wav-aif-au-snd (choix du format Audio lié à son extension)
-> commutateur SEQ Copy = Y (Yes)
-> bouton REC -> Choisir le dossier -> Entrer un nom.ext (fonction de FILE Type) -> Valider
L’enregistrement Audio commence et lance automatiquement la lecture du fichier MIDI. À la fin de la lecture du fichier MIDI, l’enregistrement du fichier Audio s’arrête automatiquement.
Puis, pour lire ce fichier Audio -> bouton PLAY -> Sélectionner le dossier et le fichier nom.ext -> Valider. La lecture Audio se lance pour la durée du fichier avec possibilités de Pause et de Boucle de lecture. Vous pouvez aussi lire ce fichier Audio avec VLC, Audacious, Audacity ou un autre lecteur Audio.

Avec SMS, la fonte sonore MIDI SF2 est gérée par QSynth, le serveur Audio JACK par QJackCtl, l’affichage des notes MIDI jouées par VMPK et les niveaux de sortie Audio JACK par JMeters.

Configuration ALSA/JACK pour la lecture de fichiers MIDI avec Simple MIDI Sequencer sous Manjaro Linux 20 (Bureau n° 2)

Ordre de lancement des applications
  1. QJackCtl -> puis cliquer sur le bouton Démarrer le serveur, si pas fait automatiquement
  2. QSynth -> charge en RAM la-les fonte-s sonore-s
  3. SMS -> lance automatiquement Purr Data (Pd-L2Ork) puis ouvre SMS
  4. VMPK -> prête à l’emploi
  5. JMeters -> prête à l’emploi
Configuration de QJackCtl, QSynth, SMS, VMPK et JMeters
  • QJackCtl -> Bouton Réglages…
    • Si l’installation de l’application s’est bien déroulée, les réglages par défaut : Pilote = Alsa, √ Temps réel, Interface = (default), etc. devraient convenir
  • QSynth -> Bouton Configuration…
    • -> Onglet MIDI -> √ Activer l’entrée MIDI -> Pilote MIDI = alsa_seq -> etc…
    • -> Onglet Audio -> Pilote Audio = jack -> etc…
    • -> Onglet Banque de sons -> Ajouter une fonte sonore SF2/SF3 présente sur votre PC
    • -> OK
  • SMS -> Menu -> Édition -> Préférences -> Onglets Audio & MIDI -> Voir capture d’écran ci-dessus -> OK
  • VMPK -> Menu -> Éditer -> Connexions MIDI -> Fenêtre Paramètres MIDI
    • -> Cocher : Activer l’entrée MIDI, Mode MIDI Omni et Activer MIDI Thru sur la sortie MIDI
    • -> Pilote MIDI In = ALSA, -> Connexion du port d’entrée MIDI = Pure Data (Purr Data)
    • -> Pilote MIDI Out = ALSA, -> Connexion du port de sortie = Fluid Synth (QSynth)
    • -> OK
    • Astuce : Ce paramétrage peut aussi se faire graphiquement dans la fenêtre Graphe ou Connecter de QJackCtl
  • JMeters -> Connecter graphiquement dans la fenêtre Graphe ou Connecter de QJackCtl les sorties de Jack qsynth aux entrées de Jack jmeters
  • SMS et son MIDI Band sont maintenant prêts à lire – jouer – afficher les fichiers MIDI (SMF).

Les lecteurs MIDI sous GNU/Linux

♦ Utilitaires graphiques ALSA & JACK

Dans un prochain article, nous pourrions voir plus en détails la configuration et l’utilisation de quelques utilitaires graphiques libres pour ALSA & JACK sous GNU/Linux, dont certains* ont été utilisés dans cet article.

QJackCtl* – Une application pour contrôler le démon du serveur de sons Audio JACK incluant un patchbay amélioré et des fonctionnalités de contrôle de connexions Audio (JACK) et MIDI (ALSA – JACK).

QSynth* – Une application permettant de gérer les fontes sonores (SoundFonts) basée sur FluidSynth (un synthétiseur logiciel en ligne de commande basé sur la spécification SoundFont).

A2JMIDID – Un démon (en ligne de commande) pour exposer des applications héritées MIDI ALSA dans des systèmes MIDI JACK. Une fois lancé, A2J apparaîtra sous forme graphique dans le patchbay utilisé, par exemple QJackCtl ou Patchage.

CALF Studio Gear – Un superbe rack d’effets et d’instruments (une cinquantaine) autonome connectable via le serveur de son JACK ou comme des plug-ins dans chaque hôte Audio capable de déclencher des périphériques conformes LV2, comprenant pour ce qui nous intéresse ici : un Instrument FluidSynth et 4 Égaliseurs de 5 à 30 bandes.

JackEQ – Une table de mixage Audio JACK avec égaliseur 3 bandes pour acheminer, distribuer et manipuler l’Audio depuis/vers plusieurs sources d’entrée/sortie.

JAMin – Une interface de mastering Audio JACK pour effectuer une gestion Audio professionnelle des flux d’entrée stéréo incluant un égaliseur 30 bandes et un analyseur de spectre. Elle utilise LADSPA pour le traitement du signal numérique (DSP).

JMeters* – Une application VU-Meter (Volume Units Meter) permettant de mesurer le niveau d’un signal Audio JACK multi-canaux proposant plusieurs types de mesure et d’affichage analogique.

MIDISnoop – Un moniteur et sondeur MIDI ALSA et JACK pour contrôler un appareil et/ou logiciel MIDI, et pour envoyer des messages MIDI à un port MIDI pour voir comment l’appareil ou le logiciel répond.

Patchage – Un patchbay modulaire pour les systèmes Audio et MIDI basé sur JACK et ALSA.

QMidiRoute – Un routeur/filtre d’événements MIDI. Les notes MIDI, les changements de contrôle (CC), les changements de programme (PC) et de pitch bend (PB) sont enregistrés et peuvent être filtrés, redirigés et transformés en d’autres événements selon des cartes MIDI définis par l’utilisateur dans les onglets de la surface de contrôle principale du logiciel.

VMPK* – Virtual MIDI Piano Keyboard est clavier virtuel agissant comme un générateur/récepteur d’événements MIDI. Il ne produit aucun son par lui-même, mais peut être utilisé pour commander un synthétiseur MIDI (matériel ou logiciel, interne ou externe). Vous pouvez utiliser le clavier de l’ordinateur pour jouer des notes, mais aussi la souris. Vous pouvez aussi utiliser le clavier virtuel pour visualiser directement sur celui-ci les notes jouées par un autre instrument ou un lecteur de fichiers MIDI et beaucoup plus.