Logiciels libres et enseignement

Favoriser l’usage de logiciels libres et de formats ouverts

Accueil > Multimedia > Musique et audio > Muse et Fluidsynth

Muse et Fluidsynth

vendredi 4 mars 2005, par Yves Potin

- Auteurs :

Ces didacticiels sont disponible en un seul document, la Musique Assistée par Ordinateur, au format PDF ou OOo Writer :

MAO.pdf
Les trois didacticiels en un seul document
MAO.sxw
Version modifiable pour OOo









Nous recommandons particulièrement la version 0.7 de MuSE, très différente de la 0.6 : optimisation remarquable de l’occupation mémoire du synthé virtuel, interface plus logique et simple. Cette version s’installe dans Debian au moyen de la ligne deb http://apt.agnula.org/demudi unstable main local extra dans le fichier /etc/apt/sources.list et apt-get install muse

Présentation générale

Le séquenceur constitue le principal logiciel d’aide à la composition et à l’interprétation musicales assistées par ordinateur. Au coeur du « home studio », de manipulation parfois complexe, ses fonctionnalités se doivent d’être très étendues en particulier en matière de traitement de l’audio. Bien connu des musiciens depuis l’époque de l’Atari ST, son interface s’est grandement standardisée depuis de nombreuses années avec le logiciel Cubase de la société Steinberg. Il existe maintenant des logiciels de MAO libres dont plusieurs séquenceurs qui gèrent entre autres les pistes audio, l’édition de partitions et l’insertion de nombreux plugins. Mais existent également des synthétiseurs logiciels qui, « branchés » sur le séquenceur, permettent de se passer virtuellement de ces instruments de musique électronique. Ce didacticiel présente l’import d’un fichier MIDI dans le séquenceur MuSE et l’utilisation du synthétiseur virtuel Fluidsynth pour jouer ce fichier, au moyen du serveur audio Jack. On étendra les logiciels et fonctionnalités dans un second temps pour finir par un enregistrement de notre travail dans le magnétophone numérique Ardour.

Pré-requis

La compilation d’un kernel linux pour l’audio et la mise en place du temps réel est détaillée sur cette page et une présentation générale de l’environnement musical sous GNU/Linux est consultable ici.

Ce didacticiel suppose que l’on dispose d’un système audio et MIDI fonctionnel sous GNU/Linux avec Jack, c’est à dire : - une machine puissante dotée de 512 Mo de mémoire vive au minimum si l’on désire utiliser des sons de qualité avec le synthétiseur virtuel. - une bonne carte son pilotée par les drivers ALSA - un noyau Linux faible latence avec le module temps réel opérationnel (pour mémoire : modprobe -v realtime gid=29 en ayant placé l’utilisateur qui va utiliser Jack dans le groupe audio, 29 sous Debian. Les capabilities doivent être activées dans le kernel et validées, voire le lien ci dessous). Le kernel linux 2.6 est recommandé pour ces deux derniers points. - une installation complète du serveur audio Jack, de son interface de pilotage qjackctl et des logiciels MuSE 0.7 et Fluidsynth, tous intégrés aux distributions Debian et Redhat / Fedora (avec Planet CCRMA). - un fichier soundfont décompressé, obtenu par exemple sur le classique Hammersound mais on consultera avec profit la page « Sounds for free » du site de référence : http://www.linux-sound.org. Attention, les soundfonts ne sont pas nécessairement libres et un logiciel hélas propriétaire pour les décompresser peut être requis (format .sfa), il s’appelle Sfark et fonctionne maintenant sous linux (http://www.melodymachine.com/). Il est assez aisé de trouver sur Hammersound un soundfont contenant la plupart des sons d’un orchestre, moderne ou classique.

On se référera avec profit à cette page pour trouver et installer tous ces logiciels, nécessaires au fonctionnement d’un système informatique musical libre de niveau professionnel.

Muse

Première étape : démarrer le serveur Jack au moyen de qjackctl ; il doit afficher qu’il tourne dès lors que le module temps réel du noyau est chargé comme le montre cette capture d’écran (le « RT » à coté de « Started » montrant que Jack tourne en temps réel) :

Cliquer sur le bouton « connect » permet d’afficher les connexions entre logiciels à l’intérieur de Jack, pour le moment on voit seulement les drivers ALSA qui gèrent la carte son. Lançons le séquenceur MuSE, il apparaît dans Jack :

Jack a détecté le lancement du séquenceur et a automatiquement affecté ses sorties audio aux entrées d’ALSA. Tout ceci pourra être modifié très simplement, comme en branchant des jacks :), lorsque nous rajouterons des logiciels, par exemple une boite a rythme spécialisée, des effets ou un magnétophone numérique multipistes.

Les boutons de transport (avant, arrière, lecture, enregistrement etc) sont immédiatement reconnaissables en haut de la fenêtre avec, à coté, les habituelles fonctions de loop, punch in et out, mute, les outils comme le pinceau, la gomme, etc... Il est déjà possible d’enregistrer si le matériel est convenablement connecté à l’entrée MIDI de l’ordinateur. Le panneau de contrôle se détache de la fenêtre principale au moyen de la touche F11, et propose en plus les diverses options d’enregistrement et de bouclage.

Les trois colonnes de la partie principale de la fenêtre nous montrent :

  • Les informations et options de la piste sélectionnée, en particulier l’instrument associé selon son canal MIDI ainsi que la transposition ou la modification de la vélocité, tous paramètres avec lesquels un musicien est bien familier.
  • La liste des pistes, avec leur nom, leur affectation de port et canal, le type de piste (MIDI, batterie ou audio, bouton C), l’activation de l’enregistrement (R), un bouton pour muter la piste (M) et un bouton solo / pre fader (S).
  • Enfin en face de chaque piste est classiquement associée la liste des parts avec leur nom, ici l’instrument correspondant. Un clic droit sur une part permet d’accéder simplement à des fonctions utiles comme l’édition dans le piano roll et bien d’autres choses.

Avant d’ouvrir une séquence, mettons en place le synthé.

Fluidsynth

Un séquenceur n’est pas un synthétiseur et n’est donc pas censé produire du son. Si les sorties MIDI de l’ordinateur sont convenablement configurées, MuSE saura envoyer le signal informatique aux synthétiseurs connectés qu’il controlera pour leur faire produire les sons adéquats par sysex si on le lui demande.

Mais nous allons nous intéresser aux capacités de l’ordinateur lui même à remplacer le synthétiseur par le biais d’un logiciel : Fluidsynth. Celui ci ne fait rien de plus que d’affecter à des sons échantillonnés pré chargés (qu’il faut lui fournir) les évènements MIDI qu’il reçoit du séquenceur. En toute logique, plus la qualité des sons échantillonnés sera élevée, plus la quantité de mémoire vive requise sera importante ; il est ainsi irréaliste de vouloir travailler de manière satisfaisante avec moins de 512 Mo de RAM. 

Notons que ce synthé n’est pas conçu pour éditer les sons échantillonnés ou plus généralement faire de la synthèse sonore, d’autres logiciels comme ZynAddSubFX sont tout à fait appropriés pour cela et peuvent être utilisés en même temps que FluidSynth : il suffit de tout brancher correctement dans Jack. Les logiciels permettant d’agir sur les échantillons ne manquent pas non plus.

Attention, MuSE dans sa version 0.7 requiert une configuration correcte du synthé virtuel avant l’ouverture d’une séquence, ce qui est logique.

Faisons sortir du son de notre séquenceur : le menu Settings / MIDI ports - Softs Synths ouvre une fenêtre dans laquelle nous ajoutons une instance de Fluidsynth en cliquant sur son nom, puis Add Instance.

L’interface graphique, certes sommaire, de Fluidsynth apparaît. Aller chercher le fichier soundfont sur le disque dur en appuyant sur Load et valider pour le faire monter en mémoire. Un délai très court sera nécessaire pour charger tous les échantillons qui peuvent être particulièrement volumineux (procédure beaucoup plus légère que dans MuSE 0.6 où les choses étaient plus complexes). Si tout s’est bien passé (c’est à dire si l’on dispose de la mémoire vive suffisante), l’interface graphique rend la main après quelques secondes très sensibles d’occupation de la machine. Un petit utilitaire de visualisation de l’occupation RAM et SWAP sera apprécié (il en existe de nombreux, pour les panneaux de Gnome et KDE entre autres).

On affectera tous les canaux MIDI au soundfont que l’on vient de charger dans l’interface comme le montre cette capture d’écran, en n’oubliant pas de spécifier la batterie (il n’est hélas pas possible d’assigner les 16 canaux en une seule manipulation). On notera donc la simplicité avec laquelle MuSE va gérer plusieurs instances de plusieurs synthés virtuels différents, chacun pouvant intégrer plusieurs soundfonts, affectables d’un simple clic.

Enfin, dans la fenêtre précédente qui montre les ports MIDI de MuSE, affecter son premier port à l’instrument Fluidsynth, périphérique Fluidsynth, l’état doit répondre OK. Manque la musique :).

Faire sortir du son de la machine

Importons une séquence, tout simplement au moyen de la fonction Fichier / Importer un fichier MIDI (nous prendrons comme exemple la séquence de Firth of Fifth, de l’album Selling England by the Pound de Genesis). On prendra garde de répondre Add, et non Replace dans la boite de dialogue sous peine de voir MuSE disparaître de Jack.

Au bout d’un instant, le logiciel a ouvert le fichier et se présente de la manière suivante :

Appuyer sur le bouton de lecture de MuSE démarre la séquence :).

Il est alors possible de recourir aux fonctions classiques du séquenceur : écouter telle ou telle piste ou telle ou telle part, placer des boucles, visualiser les instruments selon différents modes (voir le didacticiel suivant) et bien entendu enregistrer en MIDI et en audio, et encore bien d’autres choses attendues des utilisateurs de ce type complexe de logiciel, qui, quel qu’il soit, demande un apprentissage. Par exemple, modifier l’affectation des sons aux instruments, piste par piste, dans la colonne de gauche de la fenêtre est élémentaire ; la palette de sons proposée par Fluidsynth est tout à fait satisfaisante si l’on a pris un bon soundfont, et n’a rien à envier à un expandeur MIDI standard.

Nous verrons dans le prochain didacticiel comment ajouter encore des logiciels, notamment une boite a rythme externe, un second séquenceur et des plugins pilotés par rack qui transformeront l’ordinateur en véritable boîte à effets. Pour le moment, il est temps de prendre davantage contact avec MuSE en jouant avec :).

Recherche avancée