Introduction to Computer Music - Section 2022a


CMU Students: This is not for you. Please sign up for 15-322 and then find the course website!


Welcome to my course on Computer Music. This course consists of: The course uses a Learning Management System (LMS) called ATutor. The URL for the course is:
      icm.music.cs.cmu.edu/icm2022a.

Prerequisites

You need a laptop running macOS, Windows or Linux.

If you run Linux, you will have to build your own NyquistIDE from sources. We can help, but if you are not comfortable installing libraries, compiling programs and using the Unix shell, you probably should not be using Linux in the first place, and installation is likely to be difficult (of course we have directions to follow, but Linux is not just one system, and it is constantly changing.)

Ability to program. If you can write simple programs in any language (e.g., Java or Python), you should be able to follow the course and learn Nyquist (especially the SAL syntax version, which should at least look familiar). It you have never programmed, this is not the course you are looking for.

You should come with an open mind and open ears. If your goal is to write or produce pop tunes, or if you are expecting to learn how to create EDM or Hip Hop or even contemporary songs:

You need to know that the freedom to create electronic sounds from scratch with complete control can be very liberating, but it is not easy. If you want to do conventional things, use conventional tools: DAWs for recording studios, loop-based music editors for loop-based music, score editors for conventional music notation. Trying to make these musics with the tools you will learn in this course will likely be frustrating.

Some Calculus helps. Among other things, we will use formulas involving sines and cosines, study graphs of various phenomena, and talk about logarithmic or exponential relationships and functions.

This course was originally designed as an undergraduate course for Computer Science students, so some technical fluency is assumed. Then again, much of the field was invented by musicians, not scientists, so do not be too intimidated.

Non-Prerequisites

You do not need to know how to read music or anything about music theory. You will learn a few things, but this course does not assume formal musical training.

You do not need a degree in Electrical Engineering or signal processing. You will learn (I hope) the fundamentals of sampling theory and many other technical subjects.

To Enroll

To enroll, visit the URL above, find New User and click the Register button. After filling in a short form and creating an account, your request will be sent for approval. You should receive confirmation email when you are fully registered.

Schedule

You should complete about one unit per week. This should take about 6 hours per week (let us know how it goes). We will not hound you to participate, but we will not promise to keep your account open more than eight (8) months. A rough schedule, then, is:
WeekUnitProject
11 Introduction0
22 Basics of Synthesis1
33 Sampling Theory Introduction
44 Frequency Modulation2
55 Spectral Analysis and Nyquist Patterns
66 Nyquist Techniques and Granular Synthesis3
77 Sampling and Filters
88 Spectral Processing4
99 Vocal and Spectral Methods
1010 Acoustics, Perception, Effects5
1111 Physical Modeling
1212 Spectral Modeling, Algorithmic Control, 3D Sound6
1313 Audio Compression
1414 Computer Music Futures7*
1515 Where Next?

*We strongly suggest that you complete Project 7, creating a short piece of music to re-inscribe what you have learned throughout the course after completing Unit 14. This project will not be assessed, but we would love to hear it.

Grades and No Credit

This course exists for students everywhere who want to learn about Computer Music. There is no college credit or other certification.

Think of this as course notes on steroids – it is not the full course taught at Carnegie Mellon (which includes in-class presentations and discussion, office hours and teaching assistants for individual instruction, exams ☹, a concert, and more, but this is the best thing I could make available. I hope you enjoy it.

If you complete the course with a passing grade, you will be listed on our “ICM-Online Hall of Fame” page (if you agree), so at least you can earn bragging rights.

Your grade is pass (or not), based on the two types of automatic assessment that we offer: Exercises (ATutor calls them “Tests”), which are mostly short coding problems to show that you understand the lectures, and Projects, which are larger tasks that include some creative music composition. To pass the course, you must

You can resubmit work until you pass. This is a mastery-based course, not a test of your memory.

Feedback and Communication

Once you are registered in the course, you will find Forums for discussion. In the Feedback and Problem Reports forum, you can report problems and contact human help. You can also suggest the creation of other forums. Help us help you by sending suggestions and constructive feedback.

Terms

No Warranty. This material is provided “As Is.” The creator and Carnegie Mellon University disclaim all warranties of any kind, either expressed or implied, including, without limitation, implied warranties of fitness for a particular purpose, and non-infringement. The creator and Carnegie Mellon University does not warrant that the functions contained in the online course and its software will meet any requirements or needs you may have, or that the website and associated software will operate error free, or in an uninterrupted fashion, or that defects or errors in the software will be corrected, or that the software is compatible or will remain compatible with any particular platform.

Termination of Access. Your enrollment and access to this website and course material may be terminated at any time for any reason. In particular, cheating, attempts to abuse the services offered and offensive behavior toward the staff or other students will not be tolerated.

All material on this page and throughout the online course is
(c) 2022, Roger B. Dannenberg unless otherwise noted.