Connexion

Lire un fichier MIDI avec une soundfont

Les fichiers au format MIDI contiennent des messages MIDI qui, mis ensemble, forment une mélodie. Ils peuvent être combinés à un synthétiseur utilisant une banque de sons au format SoundFont et ce tutoriel montre comment utiliser un fichier MIDI pour tester le rendu d'une banque de sons.

Un peu de contexte

En jouant sur le clavier d'un synthétiseur, des signaux MIDI  sont émis et ils contiennent par exemple l'information du numéro des notes jouées avec leur vélocité (terme indiquant la force de frappe sur la touche). Un fichier MIDI, pour simplifier, contient l'enregistrement chronologique des signaux émis par un tel clavier. Jusque là, aucun son n'est encore créé.

Pour qu'un son soit émis par le haut-parleur, une étape de conversion est nécessaire et c'est ici qu'intervient le synthétiseur : il déclenche des sons à partir des signaux MIDI reçus. Plusieurs types de synthétiseurs existent et nous parleront ici des synthétiseurs utilisant la lecture d'échantillons, et plus précisément des synthétiseurs utilisant des banques de sons au format SoundFont.

Un fichier MIDI peut piloter jusqu'à 16 canaux différents, permettant l'usage en parallèle de 16 instruments différents. En plus d'indiquer quelles notes jouer, le fichier MIDI contient des instructions demandant au synthétiseur d'utiliser l'instrument X de la banque Y pour les notes à venir du canal Z. Pour permettre une sélection correcte des instruments, la banque de sons utilisée par le synthétiseur doit respecter la norme General MIDI  qui assigne, pour chaque numéros X et Y, un instrument précis. Par exemple, l'instrument 001 doit correspondre à un piano dans la banque de sons.

Pour récapituler, nous allons parler ici de la lecture d'un fichier MIDI pilotant un synthétiseur déclenchant des sons contenus dans une banque de son au format SoundFont respectant la norme General MIDI. La suite est plus simple !

Prérequis

Pour lire un fichier MIDI avec la méthode proposée ci-dessous, vous aurez besoin :

  • d'un accès à internet,
  • d'un navigateur web,
  • d'un fichier MIDI, par exemple celui-ci,
  • de manière optionnelle, une banque de sons que vous voulez tester et qui respecte la norme General MIDI  (un filtre existe dans le dépôt),
  • de manière optionnelle, la dernière version de Polyphone disponible à cette page.

Lire un fichier MIDI

Un méthode simple consiste à utiliser le synthétiseur SpessaSynth , qui sert à la fois de lecteur de fichiers MIDI et de synthétiseur utilisant des banques de sons. Il a l'avantage d'être disponible en ligne et ne nécessite aucune installation particulière.

Cliquez sur le bouton Charger un fichier MIDI, sélectionnez votre fichier MIDI, et le tour est joué.

Le lecteur MIDI et synthétiseur SpessaSynth
Le lecteur MIDI et synthétiseur SpessaSynth

Choisir la soundfont

Pour utiliser la banque de sons de votre choix, cliquez sur le bouton Charger une banque de sons et sélectionnez votre fichier.

Connecter la sortie MIDI à Polyphone

Comme indiqué plus haut, SpessaSynth est à la fois un lecteur de fichier MIDI et un synthétiseur. Il est possible de n'utiliser que la fonction de lecture de fichier MIDI et d'envoyer les signaux à Polyphone qui prendra le relai pour la synthèse sonore. Cette manipulation peut être utile si la banque de son est trop lourde pour être envoyée par internet.

Pour connecter SpessaSynth à Polyphone (méthode testée avec Linux) :

  • lancez le logiciel Polyphone en mode synthé et ouvrez les configurations,
  • sélectionnez « MIDI through » comme entrée MIDI (retenir le nom),
  • ouvrez SpessaSynth dans le navigateur internet et cliquez sur le bouton Configurations,
  • sélectionnez la sortie MIDI « MIDI through » (nom identique à l'entrée MIDI de Polyphone).

Un fichier MIDI pouvant envoyer des messages à destination de 16 canaux, il faudra ouvrir la banque de sons 16 fois et préciser pour chaque onglet un canal différent de 1 à 16. Par commodité il est possible lors de l'ouverture de Polyphone, de préciser la banque de sons à ouvrir et l'option « each » pour ouvrir les 16 onglets. La commande sera par exemple :

polyphone -s -i "/home/davy/Downloads/gm.sf2" -c "each/off/off"

Voir cette page pour des compléments d'information sur les lignes de commande.

Polyphone a besoin de vous !

Polyphone est gratuit mais il y a des coûts associés à son site web et à son développement. Un petit coup de pouce aidera beaucoup.

Faire un don
Apprenez les bases Voir le tutoriel
Haut de
page