Nyquist (langage)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Nyquist.
Nyquist
Auteur Roger Dannenberg
Développeur Roger Dannenberg
Dernière version stable 3.0.3 (le )
Influencé par Lisp
Système d'exploitation Multiplate-forme
Site web [1]

Nyquist est un langage de programmation destiné à la synthèse sonore et à l'analyse, basé sur le langage Lisp. C'est une extension de la famille XLISP de Lisp.

Présentation[modifier | modifier le code]

Avec Nyquist, le programmeur commence par définir des instruments de musique, qu'il utilise ensuite pour générer des sons, au moyen d'expressions simples. Il peut alors les combiner en expressions plus complexes pour créer une composition entière, manipuler ou générer une grande variété d'autres sons.

Le langage interprété Nyquist permet de lire et d'enregistrer des fichiers de sons, des fichiers MIDI et des fichiers texte de partitions basés sur Adagio[1]. Sur de nombreux systèmes, il permet aussi de générer des sons en temps réel.

Ce langage de programmation est aussi utilisé dans le logiciel Audacity pour créer des greffons d'effet.

Une différence importante entre Nyquist et avec les langages traditionnels de type MUSIC-N est que Nyquist n'isole pas les fonctions de synthèse sonore et les fonctions de composition. Par exemple, le langage Csound comprend deux sous-langages, un pour définir l'« orchestre » (orchestra) et l'autre pour définir la partition (score). Nyquist combine ces deux parties.

Le langage de programmation Nyquist et l'interpréteur ont été écrits par Roger Dannenberg de l'université Carnegie-Mellon, avec le soutien de Yamaha et IBM.

Exemples[modifier | modifier le code]

Synthèse[modifier | modifier le code]

(sine frequence [duree])
(noise)
  • Application d'une enveloppe temporelle à un son :
(mult son (env 0.1 0.1 0.2 1.0 0.5 0.3 1.0))

Traitement[modifier | modifier le code]

(hp son frequence_coupure)
  • Changement du niveau sonore d'un son, d'un nombre de décibels donné :
(loud dB (cue son))
  • Modification de la durée d'un son, par un facteur donné :
(stretch facteur (cue son))
  • Enchaînement de deux sons :
(seq (cue son1) (cue son2))
  • Combinaison simultanée de deux sons :
(sim (cue son1) (cue son2))

Annexes[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Notes et références[modifier | modifier le code]

  1. MIDI, Adagio, and Sequences dans Nyquist Reference Manual

Liens externes[modifier | modifier le code]