Ceci est une ancienne révision du document !
MAO (Musique Assistée par Ordinateur)
Il existe de nombreuses applications de musique sur GNU/Linux. De plus, le serveur de son nommé JACK permet d'utiliser et de router (lier ensemble) beaucoup d'entre elles en audio et/ou en midi.
On trouve aussi de nombreux effets et instruments virtuels en plugins de logiciel hôtes : standards LADSPA pour les effets et DSSI pour les instruments, le format LV2 se présente comme le successeur à la fois du LADSPA et du DSSI, et des VST sont aussi maintenant portés ou développés nativement pour GNU/Linux.
Beaucoup de ces applications implémentent la norme MIDI et permettent de l'utiliser avec son matériel. Pour plus d'informations, consultez la page concernant le MIDI.
L'audio sous Ubuntu
Il est important de comprendre le fonctionnement du son sous GNU/Linux.
Pour résumer, les applications se connectent aux pilotes (ALSA, OSS, FFADO pour les cartes Firewire…) via des serveurs de son (PulseAudio, JACK). Cela permet à plusieurs applications d'utiliser le son en même temps. ALSA dispose également de son propre serveur de son.
Dans le domaine de la MAO, JACK est un serveur de son bien plus puissant que ne l'est PulseAudio (utilisé par défaut dans ubuntu). Il est donc indiqué de remplacer PulseAudio par JACK. Il est cependant possible de continuer à utiliser PulseAudio (et donc lire les sons d'Ubuntu, et des applications compatibles) : il faut pour cela installer pulseaudio-module-jack et choisir "jack sink" en périphérique de sortie par défaut dans Pavucontrol.
Le noyau optimisé temps réel linux-lowlatency permet d'avoir un temps minimum entre le déclenchement d'un événement (note d'un contrôleur MIDI par ex.) et la reproduction du son qui lui est associé. La réduction du temps de latence au niveau du noyau se fait généralement au détriment de la stabilité et de la consommation électrique, mais le noyau linux-lowlatency est un bon compromis.
Multimédia
Voir en préliminaire la page Multimédia (particulièrement ce qui concerne l'édition et la compression du son).
Distributions orientées MAO
Certaines distributions ou variantes d'Ubuntu sont plus à même de remplir vos besoins en MAO.
Distribution | Origine | Bureau | Commentaires |
---|---|---|---|
KXStudio | Ubuntu | KDE | Variante non officielle d'Ubuntu, KXStudio est une distibution spécifiquement orientée audio. En utilisant ses propres dépôts compatibles Debian et Ubuntu, elle propose une gigantesque collection d'applications musicales récentes. KXStudio est livré avec le serveur JACK par défaut, et une quantité considérables d'applications dédiées à la MAO, parfois propres à la distro, ce qui en fait un des meilleurs choix actuellement dans ce domaine. |
Ubuntu Studio | Ubuntu | XFCE | Variante reconnue d'Ubuntu, Ubuntu Studio est livrée avec des logiciels pour le graphisme, la vidéo, la MAO et le noyau optimisé temps réel. Pour monter un studio virtuel il faudra par contre installer et configurer JACK manuellement et les applications dans les dépôts officiels sont généralement moins à jour que dans les dépôts KXStudio. (voir aussi : paquets audio de UbuntuStudio) |
AV Linux | Debian | XFCE | Distribution conçue pour deployer un studio audio / vidéo / graphique sur un matériel d'ancienne génération ou sur des configurations modestes. |
Musix | Debian | KDE | Musix, développée en Argentine est dédiée à la production audio, vidéo et graphique avec des logiciels exclusivement libres. |
Une liste plus complète de distributions orientées audio : (en) http://www.linux-sound.org/distro.html
Édition audio, mixage, enregistrement
Nom | Description | Plugins | Environnement | Installation |
---|---|---|---|---|
Ardour | puissant studio d'enregistrement et de mixage | LADSPA LV2 VST | JACK | ardour3 |
Audacity | éditeur audio | LADSPA | JACK ALSA Pulseaudio OSS | audacity |
Ocenaudio | éditeur audio (propriétaire) | paquets deb | ||
Rezound | éditeur audio | LADSPA | rezound | |
Jokosher | enregistrement et mixage | LADSPA | jokosher | |
wavesurfer | éditeur audio | wavesurfer | ||
Mhwaveedit | éditeur audio | LADSPA | mhwaveedit |
DJing
Nom | Description | Plugins | Environnement | Installation |
---|---|---|---|---|
mixxx | pour mixer et scratcher comme avec des platines (clone de Traktor) | LV2 | JACK ALSA | mixxx / mixxx 2 disponible sur ces dépôts |
TerminatorX | pour mixer et scratcher comme avec des platines | LADSPA | JACK ALSA | terminatorx |
Une liste plus complète de logiciels de djing sur linux : (en) http://linux-sound.org/ddj.html
DAWs (studios virtuels) et Séquenceurs midi
Traditionnellement les DAWs (Digital Audio Workstations) sont des logiciels qui tendent à reproduire l'environnement qu'on peut trouver dans un studio d'enregistrement physique. Elles intègrent la plupart du temps un séquenceur, qui joue le rôle de "chef d'orchestre" et automatise les différents instruments et effets virtuels.
Les séquenceurs proposent en général d'assembler et de jouer de courtes séquences ou des boucles appelées "patterns". En fonction du séquenceur, ces patterns peuvent être édités de différentes façons : piano roll (une représentation des notes de piano sous forme de frise chronologique), tracker (édition des notes en hexadécimal au clavier texte, pas très intuitif mais extrêmement rapide, hérité de la scène démo), step sequencer (suite de boutons, plutôt pour des parties rythmiques), partitions musicales traditionnelles, etc. Le protocole utilisé pour commander les instruments et les effets est généralement le MIDI. On parlera donc généralement de séquenceurs MIDI, par opposition aux séquenceurs audio, qui permettent d'organiser dans le temps la lecture de samples audio.
Les instruments génèrent les sons (il s'agit de synthétiseurs ou de sampleurs) et les effets les modifient. Ces instruments et ces effets contrôlés en MIDI peuvent être des machines externes (via une interface MIDI), des logiciels standalone (via JACK), des extensions LADSPA, DSSI ou LV2 (voir plus bas), ou être partie intégrante de la DAW. C'est donc souvent un autre paramètre à prendre en compte dans le choix du bon logiciel.
Ces studios peuvent être modulaires, dans ce cas chaque séquenceur, instrument ou effet dans l'application est un "module" qui peut être relié à un autre par des liens graphiques (qui transmettent généralement des données audio ou MIDI). C'est une représentation virtuelle des différentes machines qu'on peut trouver dans un studio d'enregistrement, avec leurs câbles audio et MIDI. Dans le cas contraire les DAWs reproduisent généralement les fonctionnalités d'une grosse table de mixage multi-effet, donc plus simple à prendre en main mais avec des possibilités de routage un peu moins poussées.
studios virtuels orientés "live"
Nom | Description | Plugins | Environnement | Installation |
---|---|---|---|---|
LMMS | Linux MultiMedia System : studio complet et intuitif, assemblage de patterns (proche de FruityLoops) | LADSPA VST | JACK ALSA | lmms |
Giada | séquenceur audio et midi / loopmachine (système de clips, proche de Ableton Live). Interface soignée. | VST (support du LV2 prévu) | JACK ALSA | paquets deb ou giada via les dépots KXStudio |
Luppp | séquenceur audio / loopmachine. Samples synchronisées par time stretch. Interface soignée proche de Ableton Live. | JACK | luppp via les dépots KXStudio | |
SuperBoucle | séquenceur audio / loopmachine | JACK | binary sources | |
Seq24 | séquenceur midi simple basé sur des boucles | JACK | seq24 | |
Radium | tracker modulaire, audio et midi. Intègre Pure Data (démo). | LADSPA VST | JACK | radium via les dépots KXStudio |
beast | tracker modulaire (clone de Jeskola Buzz) | LADSPA | ALSA | beast |
buzztrax (ex buzztard) | tracker modulaire (clone de Jeskola Buzz) | LADSPA | JACK ALSA | sources |
aldrin (abandonné) | tracker modulaire (clone de Jeskola Buzz) | LADSPA DSSI VST | JACK | sources |
neil (fork de aldrin) | tracker modulaire (clone de Jeskola Buzz) | LADSPA DSSI VST | JACK | sources |
Machina | séquenceur midi basé sur des automates finis | JACK | svn | |
Jost (abandonné) | studio modulaire / séquenceur | LADSPA VST | JACK ALSA | binary |
Bitwig Studio (payant) | studio complet, séquenceur audio et midi (proche de Ableton Live) | VST | JACK | propriétaire |
energyXT2 (payant) | studio modulaire complet / séquenceur audio et midi | VST | JACK | propriétaire |
renoise (payant) | studio complet construit autour d'un tracker audio et midi particulièrement efficace | LADSPA DSSI VST | JACK | propriétaire |
studios virtuels orientés "composition"
Nom | Description | Plugins | Environnement | Installation |
---|---|---|---|---|
Ardour | séquenceur audio et midi : depuis la version 3, Ardour intègre un séquenceur midi, ce qui en fait l'une des DAWs les plus puissantes sur linux, équivalent libre de Pro Tools, Cubase ou Logic Pro | LADSPA VST LV2 | JACK ALSA | ardour pour la version 4.6 ou via les dépots KXStudio pour la version 5.5 |
Rosegarden | séquenceur audio et midi avec éditeur de partition | LADSPA DSSI | JACK | rosegarden |
Muse | séquenceur audio et midi | LADSPA DSSI VST LV2 | JACK | muse |
Qtractor | séquenceur audio et midi en Qt | LADSPA DSSI VST LV2 | JACK | qtractor |
Wired (abandonné) | séquenceur audio et midi | LADSPA | JACK | paquet deb |
Aria Maestosa | séquenceur midi simple, édition par piano roll, step sequencer, partition et tablature | JACK ALSA | ariamaestosa via les dépots KXStudio | |
Jacker | séquenceur midi / tracker | JACK | jacker via les dépots KXStudio | |
shaketracker | trackers midi | JACK | shaketracker / cheesetracker | |
Tracktion (propriétaire) | séquenceur audio et midi intuitif | LADSPA VST (en version payante) | JACK | propriétaire |
hôtes simples
Nom | Description | Plugins | Environnement | Installation |
---|---|---|---|---|
Carla | station hôte, supporte de nombreux formats, y compris les banques de samples GIG, SF2 et SFZ, et contrôlable via MIDI ou OSC | LV2 LADSPA DSSI VST AU | JACK ALSA LV2 VST OSC | carla-git via les dépots KXStudio |
jack-rack | station multi-effets pour plugins LADSPA | LADSPA | JACK | jack-rack |
zynjacku | station multi-effets (lv2rack) et synthés (zynjacku) pour plugins LV2 | LV2 | JACK | zynjacku |
JACK et les gestionnaires de session
Dans la mesure où JACK permet de relier en audio ou en midi tous les logiciels compatibles, il peut être considéré lui-même (avec l'ensemble du parc logiciel) comme un studio virtuel modulaire. Le problème dans ce cas est que toutes ces applications standalone doivent être chargées indépendamment, reliées entre elles, et pour chacune de ces applications il faut charger la sauvegarde ou le preset sur lequel on souhaite travailler. Ça peut devenir très lourd logistiquement. Heureusement, on a mis en place des protocoles qui permettent de gérer tout cela automatiquement, sous forme de session qu'on peut sauvegarder et réouvrir. Le gestionnaire de session s'occupe alors en principe de relancer les différentes applications, de les connecter, et de recharger les settings correspondants.
Malheureusement il existe plusieurs protocoles de session différents et toutes les applications ne sont pas uniformisées. JACK session est le protocole le plus récent, et probablement définitif, mais il n'est pas implémenté partout. Et il existe du coup plusieurs gestionnaires de session différents :
- QJackCtl permet de gérer les applications compatibles JACK session
- Non Session Manager peut travailler même indépendamment de JACK
Nom | Description | Protocole | Installation |
---|---|---|---|
QJackCtl | QJackCtl est une interface graphique pour le serveur de son JACK. Il permet entre autre de connecter entre elles les différentes applications compatibles JACK et de sauvegarder leurs états sous forme de sessions uniques, à condition que celles-ci implémentent le standard JACK session. | JACK-session | qjackctll |
Gladish | Interface graphique pour LADISH. Permet de router les différentes applications compatibles, et évidemment de gérer les sessions LADISH. | LADISH JACK-session LASH | gladish |
Claudia | Application issue du projet KXStudio. Proche de Gladish, elle permet de router les différentes applications compatibles JACK et fournit en plus un inventaire détaillé des applications disponibles. | LADISH JACK-session LASH | claudia via les dépots KXStudio |
Non-DAW | Non Daw reprend à son compte ce concept de jack comme studio modulaire global et propose ainsi des modules sous forme d'applications standalone : Non Timeline (enregistreur multipiste) Non Sequencer (séquenceur MIDI), Non Mixer (console de mixage), Non Session Manager (gestionnaire de session). | NSM | non-daw non-mixer non-sequencer non-session-manager via les dépots KXStudio |
Un comparatif plus détaillé des protocoles de session : (en) https://www.linuxmusicians.com/viewtopic.php?p=39846#p39846
Instruments
On trouve de nombreux instruments virtuels soit en standalone JACK, soit en plugin de studios virtuels (voir au dessus) au format DSSI, LV2 ou VST.
synthétiseurs
Nom | Description | Environnement | Installation |
---|---|---|---|
calf studio gear | une collection complète d'effets et instruments virtuels de qualité, entre autre 3 synthétiseurs : un orgue (synthèse additive), un synthé monophonique (synthèse soustractive à modélisation analogique), et un synthé à table d'onde. | JACK LV2 | calf-plugins |
Ingen | synthétiseur modulaire | JACK LV2 OSC | ingen via les dépots KXStudio |
Helm | synthétiseur polyphonique à l'interface soignée et aux sonorités modernes. démo | JACK LV2 VST | paquets deb ou helm via ces dépôts |
Sorcer | synthétiseur polyphonique à table d'onde. orienté dubstep / dnb. interface minimaliste et soignée. | LV2 | sorcer via les dépots KXStudio |
Aeolus | Un émulateur de grand orgue, peu vorace en ressources. | JACK | aeolus |
amSynth | synthétiseur à modélisation analogique | JACK | amsynth |
Zynaddsubfx | synthétiseur évolué | JACK | zynaddsubfx |
bristol | émulation de nombreux synthétiseurs vintages | JACK | bristol |
freebirth | synthétiseur de basse inspiré de la TB-303 (très utilisée en techno pour les sons acid) | ALSA | freebirth |
nekobee | autre émulateur de TB-303 | DSSI | nekobee |
timidity | Timidity sert aussi de synthétiseur virtuel | JACK | timidity |
hexter | synthèse FM : émulateur du Yamaha DX7 | DSSI | hexter |
whysynth | synthétiseur très complet | DSSI | whysynth |
Xsynth | synthétiseur à modélisation analogique simple | DSSI | xsynth-dssi |
sampleurs
Nom | Description | Environnement | Installation |
---|---|---|---|
LinuxSampler | sampleur, éditeur de banque (gigedit), interface graphique : qsampler (qt) ou jsampler (java) | JACK ALSA VST LV2 | qsampler |
Hydrogen | boîte à rythme avancée : step sequencer et lecteur / éditeur de samples | JACK | hydrogen hydrogen-drumkits |
FluidSynth | soundfont player (interface graphique : qsynth) | JACK ou DSSI | fluidsynth et qsynth ou fluidsynth-dssi |
calf studio gear | une collection complète d'effets et instruments virtuels de qualité, entre autre un player de soundfont sf2, implémentation du FluidSynth. | JACK LV2 | calf-plugins |
swami | éditeur et player de soundfont sf2 (implémente FluidSynth) | JACK | swami |
Specimen (abandonné) | sampleur simple | JACK | specimen |
Petri-Foo (fork de specimen) | sampleur simple | JACK LV2 | petri-foo |
freewheeling | enregistrement et jeu de boucles pour le live | JACK | freewheeling |
sooperlooper | enregistrement et jeu de boucles pour le live | JACK | sooperlooper |
Fabla | lecteur de samples, orienté rythmique | LV2 | fabla via les dépots KXStudio |
Effets
On trouve beaucoup d'effets soit en standalone JACK, soit en plugin de studios virtuels (voir au dessus) au format LV2, LADSPA ou VST.
Nom | Description | Environnement | Installation |
---|---|---|---|
calf studio gear | une collection complète d'effets et instruments virtuels de grande qualité : traitements dynamiques (dont compresseur multibande), filtres, eqs, delays, distortions, harmonic exciter etc. | LV2 (JACK via calfjackhost) | calf-plugins |
MDA-LV2 | une collection complète d'effets (36) de très bonne qualité, port des MDA-VST en LV2 | LV2 | mda-lv2 |
ArtyFX | une autre collection d'effets, à l'interface soignée, plus minimalistes et orientés live | LV2 | artyfx via les dépots KXStudio |
Guitarix | Multi-effets de qualité pour guitare (copie de Guitar Rig) : simulation d'ampli et reverb à convolution, distortion, flanger, phaser, tremolo, etc. hôte LADSPA et LV2 | JACK LV2 | guitarix |
Rakarrack | Multi-effets pour guitare : distortion, flanger, phaser, tremolo, echo | JACK | rakarrack |
IR | reverb à convolution (effet de reverb basée sur des "empreintes" sonores, "impulse responses" en anglais) | LV2 | ir.lv2 |
EQ10Q | suite de filtres et d'equalizers | LV2 | EQ10Q |
freqtweak | outils originaux de manipulations spectrales (FFT) : equalizer, compresseur, gate, delay, etc., tous "massivement multibandes" | JACK | freqtweak |
Une liste considérable de VST natifs pour Linux : (en) http://linux-sound.org/linux-vst-plugins.html
Programmation
Nom | Description | Plugins | Environnement | Installation |
---|---|---|---|---|
Pure Data | pure data est plus qu'un logiciel de MAO : c'est une interface de programmation graphique pour la création multimédia (au sens large) en temps réel. Sans mettre forcément les doigts dans le développement, on peut utiliser des applications de mao sous forme de patches prêts à l'emploi comme le très graphique HackTheDj! par exemple. Préférez la version pd-extended disponible sur http://puredata.info/downloads à la version disponible dans les dépôts ubuntu (moins récente et moins complète). | DSSI LADSPA | JACK, OSC | ajout dépôt |
csound | langage de programmation (et compilateur) dédié a la création sonore et musicale introduction | LADSPA | JACK, OSC | csound csound-doc |
DarwinTunes | les participants influent sur la musique générative et le robot apprend (intelligence artificielle). exemple |
Voir aussi codelab, excellent forum d'entraide autour de la programmation multimédia temps réel (Pure Data, Processing, SuperCollider, etc).
Accessoires, outils
Nom | Description | Environnement | Installation |
---|---|---|---|
Noteedit | éditeur de partitions simple (n'est plus en développement) | noteedit | |
Canorus | NoteEdit refondu avec de nouvelles fonctionnalités | canorus | |
LilyPond | éditeur de partitions | lilypond | |
Denemo | Interface graphique GNOME pour Lilypond | denemo | |
Frescobaldi | Interface graphique KDE pour Lilypond | frescobaldi | |
MuseScore | édition de partitions. Utilise QT4, et les ressources midi de votre carte son. | JACK ALSA | |
scolily | Convertit l'entrée microphone en MIDI (lilypond…) | scolily | |
gtick | métronome | gtick | |
vkeybd | clavier midi virtuel | JACK | vkeybd |
ll-scope | oscilloscope | DSSI | ll-scope |
tuxguitar | création, édition de tablature pour guitare | ||
impro-visor | création d'accompagnements MIDI et de solo (interface utilisateur) | ||
JChordBox | création d'accompagnements MIDI (interface utilisateur + ligne de commande) | ||
mma | création d'accompagnements MIDI (ligne de commande) | mma |
Logiciels Windows
Certains logiciels développés pour Windows fonctionnent correctement sur Linux via Wine. C'est le cas par ex. de FruityLoops (studio virtuel) et de Wavosaur (éditeur audio). Cette solution n'est cependant pas recommandée, principalement parce qu'elle offre une faible intégration dans l'environnement Linux : pas de support ou support limité pour JACK, le matériel audio (interfaces audio, contrôleurs, machines externes), pas de support pour des plugins LADSPA, DSSI ou LV2 etc.
Carla (avec carla-bridge-win32) et FeSTige permettent aussi d'utiliser la plupart des VST compilés pour Windows (au format DLL) dans Linux (grâce à Wine).
Liens externes
Ressources
- www.linux-sound.org, une base de donnée impressionnante sur tout ce qui concerne la MAO et l'audio sur Linux : distributions, applications, plugins, hôtes, hardware, samples, outils pour guitaristes, etc.
Applications
- apps.linuxaudio.org : base de donnée collaborative des applications dédiées à la musique sous Linux.
Samples
- The Freesound Project : base de donnée de samples libres de droit (creative commons)
- Free loops : pack de boucles et de clips audio libres de droit (creative commons)
- Musicradar free music samples : plus de 50000 samples de qualité libres de droit, tous styles
- www.stonewashed.net : une liste de sites de sons libres
MIDI Files
- Mididb : base de donnée de fichiers midi (partitions électroniques de musiques pop connues)
- Video Game Musique Archive : fichiers midi de musiques de jeux vidéos
- Classical Archive : fichiers midi de musique classique (payant)
MAO en ligne
Instruments libres de droit
La philosophie du logiciel libre fait parfois des émules dans d'autres secteurs, en particulier dans celui de l'électronique et du hardware (matériel physique). Dans le contexte de la MAO, de nombreux instruments électroniques ont été développés en suivant le concept de matériel libre.
- Arduino : microcontrôleur avec port USB, permet par ex. (entre énormément d'autres choses) de fabriquer un contrôleur MIDI avec une boîte de conserve et 3 potards.
- Axoloti : microcontrôleur audio (utilisable comme synthé, sampleur ou multi-effets) qui permet d'exécuter en standalone des patches modulaires créés sous une interface java (compatible linux)
- Monome : contrôleur MIDI USB, grille de boutons.
- Reactable : table réactive et interactive, sorte de tablette géante qui invite (par captation et projection) un ou plusieurs utilisateurs à manipuler des objets afin de créer de la musique.
- Nui group : groupe de recherche ouverte autour des interfaces homme-machine dites "naturelles" (qui ne requièrent pas d'apprentissage)
Informations, Documentation, Tutoriels
- Le guitariste libre, blog francophone qui vous guide pas en pas dans le monde du logiciel libre et freeware dédié à la MAO sur Ubuntu.
- (en) planet.linuxaudio.org : fil d'actualité autour de l'audio sous Linux.
- BlueDid29 - MAO libre : blog autour du multimédia sous Linux.