Nyquist - Audacity Manual

# Nyquist

From Audacity Development Manual
Nyquist is a programming language for sound synthesis and analysis based on the Lisp programming language. It is an extension of the XLISP dialect of Lisp, and is named after Harry Nyquist. It can be used to write plugin effects for Audacity. The Nyquist programming language and interpreter were written by Roger Dannenberg at Carnegie Mellon University, with support from Yamaha Corporation and IBM.

## Contents

1. Nyquist Programming
2. Getting Started
3. Existing Nyquist plugins available for download
4. Advanced Nyquist

## Nyquist Programming

Nyquist was written by Roger B. Dannenberg and was intended to be used as a complete programming language for audio synthesis and analysis, with support for MIDI, audio recording and playback, file I/O, object-oriented programming, profiling, debugging and more.

Audacity uses a subset of Nyquist's functionality, allowing you to use Nyquist functions in Audacity. Audacity also provides additional features and commands for Nyquist, including the ability to create plugins.

## Getting Started

The following are a set of three linked tutorials to help get you started with programming in Nyquist for Audacity.

- The Nyquist Prompt tool
- Introduction to Nyquist and Lisp Programming
- Programming in Nyquist
- Creating Nyquist Plugins

## Existing Nyquist plugins available for download

The following sections link to pages in the Audacity Wiki from where existing Nyquist plugins may be downloaded.

These sections in the Audacity Wiki are about existing Nyquist plugins that are ready and available for you to download and use in Audacity.

- Master list of downloadable Nyquist plugins
  - Nyquist Effect Plugins
  - Nyquist Analyze Plugins
  - Nyquist Generate Plugins

## Advanced Nyquist

The following sections link to pages in the Audacity Wiki where more fully detailed information on programming in Nyquist and full details of existing Nyquist plugins can be found.

### Nyquist Programming Reference

- Nyquist Audio Programming

### Nyquist Documentation

This page is intended primarily for people that wish to write Nyquist plugins or gain an insight into how Nyquist is used in Audacity.

- Nyquist Documentation

### Nyquist Plugins Reference

This Wiki page offers a detailed look at the structure and syntax of Nyquist Plugins. It is intended for people who wish to write their own plugins.

- Nyquist Plugins Reference