Nyquist Reference Manual (original) (raw)
Version 3.24 Copyright 2013-2025 by Roger B. Dannenberg
Carnegie Mellon University
School of Computer Science
Pittsburgh, PA 15213, U.S.A.
Next Section | Index |
Table of Contents
- Preface
- Introduction and Overview
- The NyquistIDE Program
- Behavioral Abstraction
- Continuous Transformations and Time Warps
- More Examples
- SAL
- SAL Syntax and Semantics
* Expressions
* Simple Expressions
* Operators
* Function Calls
* Array Notation
* Conditional Values
* SAL Statements
* begin and end
* chdir
* define variable
* define function
* exec
* if
* when
* unless
* load
* loop
* play
* plot
* print
* display
* return
* set
* with
* exit - Interoperability of SAL and XLISP
* Function Calls
* Symbols and Functions
* Playing Tricks On the SAL Compiler
- SAL Syntax and Semantics
- Nyquist Functions
- Sounds
* What is a Sound?
* Multichannel Sounds
* Accessing and Creating Sound
* Miscellaneous Functions - Behaviors
* Using Previously Created Sounds
* Sound Synthesis
* Oscillators
* Piece-wise Approximations
* Filter Behaviors
* Effects
* Physical Models
* Phase Vocoder
* More Behaviors - Transformations
- Combination and Time Structure
- Sound File Input and Output
- Low-level Functions
* Creating Sounds
* Signal Operations
* Filters
* Table-Lookup Oscillator Functions
* Phase Vocoder Functions
* Physical Model Functions
* Sequence Support Functions
- Sounds
- Nyquist Globals
- Interactive Nyquist
- Time/Frequency Transformation
- MIDI, Adagio, and Sequences
- The SEQ Type
- Adagio Score Language
- Specifying Attributes
* Time
* Pitch
* Duration
* Next Time
* Rest
* Articulation
* Loudness
* Voice
* Timbre (MIDI Program)
* Tempo
* Rate - Default Attributes
- Examples
- Advanced Features
* Time Units and Resolution
* Multiple Notes Per Line
* Control Change Commands
* Multiple Tempi
* MIDI Synchronization
* System Exclusive Messages
* Control Ramps
* The !End Command
* Calling C Routines
* Setting C Variables
- Linear Prediction Analysis and Synthesis
- Developing and Debugging in Nyquist
- Xmusic and Algorithmic Composition
- Xmusic Basics
- Xmusic Patterns
* Nested Patterns
* Periods
* General Parameters for Creating Pattern objects
* cycle
* line
* random
* palindrome
* heap
* accumulation
* copier
* accumulate
* sum
* product
* eval
* length
* window
* markov - Random Number Generators
- Score Generation and Manipulation
* Keyword Parameters
* Using score-gen
* Score Manipulation
* Xmusic and Standard MIDI Files
* Workspaces
* Utility Functions
- Nyquist Libraries
- Statistics
- Plots
- Labeling Audio Events, Marking Audio Times, Displaying Marked Audio Times
- Linear Regression
- Vector Math, Linear Algebra
- JSON Input and Output
- Piano Synthesizer
- Dynamics Compression
- Clipping Softener
- Graphical Equalizer
- Sound Reversal
- Time Delay Functions
- Multiple Band Effects
- Granular Synthesis
- Chowning FM Voices
- Atonal Melody Composition
- MIDI Utilities
- Reverberation
- DTMF Encoding
- Dolby Surround(R), Stereo and Spatialization Effects
- Drum Machine
- Appendix 1: Extending Nyquist
- Appendix 2: Intgen
- Appendix 3: XLISP: An Object-oriented Lisp
- Introduction
- A Note From The Author
- XLISP Command Loop
- Special Characters
- Break Command Loop
- Data Types
- The Evaluator
- Lexical Conventions
- Readtables
- Lambda Lists
- Objects
- The “Object” Class
- The “Class” Class
- Profiling
- Symbols
- Evaluation Functions
- Symbol Functions
- Property List Functions
- Array Functions
- List Functions
- Destructive List Functions
- Predicate Functions
- Control Constructs
- Looping Constructs
- The Program Feature
- Debugging and Error Handling
- Arithmetic Functions
- Bitwise Logical Functions
- String Functions
- Character Functions
- Input/Output Functions
- The Format Function
- File I/O Functions
- String Stream Functions
- System Functions
- File I/O Functions
* Input from a File
* Output to a File
* A Slightly More Complicated File Example
- Index