1. The World of Csound. Why Use Csound? Why You Might Not Want to Use Csound. A Quick History of Csound. Resources: Mailing List; The Online Wiki Manual; How to Use the Canonical Manual; Books for Further Study. 2. Downloading & Installing. Choosing the Correct Version: -d vs. -f Versions; When to Use an Older Version. Running the Installer: Windows; Macintosh; The Many Flavors of Linux. Setting Up Your System. Audio I/O: Real-Time Output vs. Rendering; What Are Portaudio and Jack? Testing Your Setup. What the Console Output Means. Running Csound from the Command Line. Command-Line Flags. 3. The Structure of a .csd File. The .orc/.sco File Concept. Tags. The Orchestra Header. Adding Comments to Your Code. Macros. Compiler Error Messages. 4. Using the QuteCsound Interface. The Main Windows. The Configuration Box. The Editor Window: Fixing Known Editor Glitches in Windows. Widgets. Accessing the Manual. Syntax Hints. Live Events. 5. Building Your Own Instruments. instr and endin. i- vs. k- vs. a-. p-fields and p-values. A Simple Tutorial Instrument. Adding Features to the Tutorial Instrument. Adding Still More Features. Logic and Flow Control. Debugging Tips: Common Errors; Using Print Statements. 6. Writing a Score. i-statements. t-statements. f-statements. Looping Score Sections. Advancing the Clock. Using Macros. Creating Score Events from Within the Orchestra. 7. Thirty Opcodes You Must Know. What Is an Opcode? Tone Generators: Basic Oscillators; FM Synthesis; Granular Synthesis; Formant Synthesis; Sample Playback. Envelopes. Filters. Noise Generators. Global Signal Routing. The Important GEN Routines. Table Operations. Panning. Dynamics. Analysis and Resynthesis. User-Defined Opcodes. Sound Design in Csound -- Principles & Ideas. 8. Other Front Ends. blue. WinXsound. Cecilia. AthenaCL. 9. Using Csound with MIDI. Setting Up a MIDI System. The MIDI Opcodes. Performance Considerations. 10. Other Options for Real-Time Use. OSC. Real-Time Audio Processing. Using Csound with Pd. 11. Creating Audio Effects. Delay. Reverb. Waveshaping. Chorusing. 12. Algorithmic Composition Using Python.
About the Author
Jim Aikin has written hundreds of articles on music technology for Keyboard, Electronic Musician, Mix, and other magazines. He is the author of POWER TOOLS FOR SYNTHESIZER PROGRAMMING, CHORDS & HARMONY, PICTURE YOURSELF PLAYING CELLO, and two out-of-print science fiction novels. His short fiction has appeared in Asimov's Science Fiction, The Magazine of Fantasy & Science Fiction, and other magazines. He is also active as a hobbyist computer programmer, having released half a dozen freeware text adventure games. To learn more about his varied activities, visit www.musicwords.net.