Cette page présente :
- les environnements de composition algorithmiques, où l'abstraction est de très haut niveau, et où l'on manipule directement des notes, accords etc. Pouvoir manipuler ces outils dans un langage de programmation permet de créer des boucles, des itérations sur des propriétés de ces objets.
- les environnements de synthèse sonore où l'on agit au contraire au plus bas niveau, directement sur oscillateur pour façonner le son. Toute une section décrit les populaires langages de programmation graphiques max-like qui ne se limitent largement pas à la synthèse sonore.
Les 2 niveaux sont en général plutôt cloisonnés, car l'on peut très bien remplacer un environnement de composition par un séquenceur midi, et un environnement de synthèse par un synthé virtuel. Il est conseillé d'utiliser ces langages lorsqu'on se sent limité par les outils traditionnels.
Toutefois il est possible de tout contrôler par des environnements de programmation. En lisp par exemple on peut le faire sans changer d'environnement, en utilisant conjointement common music et common lisp music.
Table des matières
Aperçu
• Forum dédié : "Toutes les autres applications, les émulateurs"• PureData
• Netpd
• CSound
• SuperCollider
• gAlan
• Siren
• Grace / CommonMusic
• Clam
Les environnements de composition algorithmique
Ces outils sont basés souvent sur lisp ou smalltalk, ce qui les rend dépendant des différentes implémentations.L'avantage est qu'ils sont multi-plataforme sans aucun effort. Le désavantage est que cela en devient difficile à installer (les libs doivent être installées individuellement).
- Le LISP est un langage très intéressant car une très grande liberté est possible dans l'imbrication des objets. Il est possible de construire des structures extrêmement complexes à partir de petites fonctions. Il permet de créer des exécutables, ce qui est un avantage non négligeable si l'on veut diffuser son logiciel.
- Le smalltalk est un langage dans lequel tout est objet, ce qui peut représenter une facilité de conceptualisation lorsqu'on comprend la logique "objet". Une implémentation smalltalk est en général basé sur une machine virtuelle (Squeak pour le multimédia par exemple).
CommonMusic
Common Music est un environnement de composition, c'est à dire qu'il se concentre sur la notation musicale. Ici, des fonctions servent à créer des algorithmes produisant une sortie sous forme de fichier midi ou de fichiers textes compatibles avec Csound, CLM ou d'autres langages. Plein de possibilités, mais hélas un peu rebutant à cause de l'interface en ligne de commande.http://commonmusic.sourceforge.net/doc/cm.html
OpenMusic, un logiciel graphique axé sur les notes
OpenMusic est un projet à priori fort intéressant car mettant à disposition graphiquement un ensemble d'algorithmes pour composer. OpenMusic s'inscrit dans la tradition des environnements basés sur le LISP comme Common Music, en y apportant une interface graphique.Siren
sirenOutils de composition algorithmique en smalltalk basé sur la machine virtuelle VisualWorks.
Le "noyau", qui correspond aux objets audio de base (évènements sonore localisés dans le temps, suites d'évènements) est nommé Smoke.
Le site internet : http://www.create.ucsb.edu/Siren
Autres pistes
Il existe un nouveau projet par l'auteur d'OpenMusic (et de son ancêtre Patchwork) appelé PWGL http://www2.siba.fi/PWGL/index.html. Quel dommage, celui-ci ne tourne pas sous Linux, bien qu'utilisant des bibliothèques libres (libsnd, portaudio), mais sous MacOSX et Windows XP. Seconde déception, bien que le programme soit gratuit, pas de licence libre en vue (?). Enfin, il semble qu'il faille une implémentation propriétaire du Lisp pour le faire fonctionner. Ceci dit, voilà un programme intéressant, et outre les algorithmes de notes en LISP, sont offerts des possibilités de synthèses et même de sorties 3D avec OpenGL.Les environnements de synthèse sonore
Common Lisp Music (CLM)
CLM est un langage de programmation sonore basé sur le LISP. Ici, pas d'interface graphique, les algorithmes étant écrits en mode texte à l'aide de fonctions spécialisées en LISP. A noter que CLM est l'oeuvre de l'auteur de Snd, un éditeur de son assez ancien dans le monde Unix.http://ccrma.stanford.edu/software/clm/
Csound
Vous trouverez quelques infos et des liens intéressants sur la page Csound.SuperCollider
Un très bon environnement en langage Objective C.Le site internet : http://www.audiosynth.com
Sfront
Un langage similaire dans l'esprit à Csound, mais avec la visée d'être compatible avec le standard MP4-SA.Le site internet : http://www.cs.berkeley.edu/~lazzaro/sa/
Savoir
Pour tout les logiciels présentés, nous vous conseillons encore une traduction de Willow75 d'un excellent tutoriel très abordable de Miller Puckette sur les synthèses sonores. S'il aborde succinctement PureData, dans l'ensemble les informations peuvent appliquer à n'importe quel logiciel.http://willow75.free.fr/article06/index.html
Les MAX-like
Miller Puckette est un universitaire qui a été à l'origine de toute une mouvance de logiciels d'expérimentation audio. En fait il s'agit d'un langage graphique multimédia originellement développé sous Macintosh pour traiter les données midi en temps réel avec des modules de toutes sortes. Ce logiciel s'appelait alors Max. Par la suite, Miller Puckette à travaillé avec l'IRCAM sur une extension permettant de traiter aussi les signaux audio. Ainsi est né Max/MSP. Celui-ci d'ailleurs existe toujours pour Mac et Windows sous forme commerciale. L'IRCAM a de son coté continué l'héritage en créant JMax un logiciel semblable qui utilise Java pour l'interface graphique. JMax est sous license GPL. Miller Puckette quant à lui, a aussi continué à développer son projet en créant PureData, qui utilise une interface Tcl/Tk. Ce projet est également libre.Notons qu'il existe déjà le site francophone Idecibel qui propose articles et forums sur les logiciels MAX.
Jmax
Une traduction de Willow75 d'un tutoriel sur Jmax.PureData
- puredata : présentation de PureData.
- Netpd : Une introduction à PureData par le biais de Netpd qui permet de se faire des boeufs techno en réseau.
OSW
OpenSoundWorld reprend en tous points l'aspect et le fonctionnement des environnements MAX.Praxis Live
Praxis Live est un système modulaire permettant de créer des patchs audio et vidéo au moyen d'une programmation graphique ou de script.Il utilise Javasound, jack et le langage de programmation Processing pour les scripts (langage dérivé de Java).
Liens et commentaires
[+]