Nyquist Audio Programming

From Audacity Wiki
Revision as of 04:28, 7 February 2008 by Edgar-rft (talk | contribs) (Started 'Nyquist Audio Programming' page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Related pages:

Digital Audio Technology, Download Nyquist Plug-ins


Nyquist Programming with Audacity

Nyquist plugins are plain text files which can be read with every simple text editor. You can e.g. load the '.lsp' files from the Audacity 'nyquist' directory or the '.ny' files from the Audacity 'plug-ins' directory into your favourite text editor and try to find out how they work. That's how I myself learned Nyquist programming. Lots of Nyquist plugins can be found on the Nyquist plug-ins download page (see link at the top of this page).


The following is at the moment (February 7, 2008) only a list of suggestions. The related pages still need to be written. Feel free to add topics you are interested in on the discussions page.


Basic Experiments

Experiments from the Audacity Nyquist prompt:

  • Changing the volume of an Audacity audio track
  • Changing the volume of the left and right stereo channels independently
  • Changing the volume with envelopes
  • Changing the volume with a low frequency generator (Tremolo effect)
  • Increasing/decreasing treble and bass (simple equalizer)
  • Timeshift with Nyquist - simple delay effect
  • Audio loops with Nyquist - simple loop and echo effects


Advanced topics

  • Writing your own Audacity Nyquist plugins
    • Official Audacity Nyquist plugin documentation
    • Updated plugin information, 2007
    • Nyquist 2.36 manual (the current Nyquist 3.0 manual is not compatible to Nyquist in Audacity)
    • XLISP documents collection (XLISP is the programming language Nyquist is based on)

In the long view I would like to unify the old Nyquist plugin documentation on the Audacity homepage and the updated information in the german forum into one single place here in the user's wiki.

  • Narrowing and widening stereo signals
  • Removing vocals from a stereo recording


Very advanced topics

  • Reverb - multiple echos with different delay times
  • Reverb - the relations between timeshift and frequency response
  • Reverb - frequency dependent delays with comb and allpass filters
  • Dynamics processing - how to derive control signals from volume behaviour
  • Auto-equalizing - how to derive control signals from frequency behaviour


There is of course still much missing. Feel free to add your suggestions on the discussion page.