CS 410P/510 Sound: Computers, Sound and Music

Term: Spring 2019
Credits: 4 (410P), 3 (510)
CRN: TBA
Section: TBA
Meeting Time: Tuesday, Thursday 1640-1830 (4:40-6:30PM)
Meeting Location: TBA
Instructor: Bart Massey (bart AT cs DOT pdx DOT edu)
Office Location: FAB 120-18
Prerequisites: See below

Disclaimer

Everything about this syllabus is entirely tentative, and maybe be changed at the whim of the instructor without warning.

Description

In this course we will learn to use computers and software to work and play with sound and music.

Digital pervades every aspect of sound and music these days. It's all driven by software. We write software. Let's try to understand all of this at some superficial level in just ten weeks.

This is a programming-intensive survey course. We will give an overview of many areas of digital audio and music analysis, construction, and transformation.

Schedule

Week 1: Computer Audio Foundations / Practics

Week 2: Digital Audio Signal Processing I

Week 3: Digital Audio Signal Processing II

Week 4: Sound Manipulation

Week 5: Music Synthesis I

Week 6: Music Synthesis II

Week 7: Music Theory I

Week 8: Music Theory II

Week 9: Music Analysis

Week 10: Music Generation

Prerequisites

*Required Courses: CS 201, CS 202, CS 350

Familiarity with programming in general and C/C++ in particular is required. Basic ability to use the Linux environment is required. Python experience is highly desirable.

Goals, Topics and Objectives

Upon the successful completion of this course students will be able to:

Readings

Readings will be assigned from the Internet. No textbook is planned at this time.

Course Communication

Communications for this course will primarily be through a shared workspace provided by the Slack chat tool. Everyone is strongly encouraged to participate in the channel.

Course Work

Workload

This course requires substantial out-of-class homework and study. Expect to spend at least 8 hours of out-of-class time each week mastering this difficult material.

I encourage group collaboration on individual assignments: creating study groups or online chat-rooms to discuss the approach and understand the problem is an acceptable and encouraged methodology. The write-up, programming, and actual solutions must be your individual work. If you represent someone else's work as your own, you are committing plagiarism.

Homework

I will assign take-home homework many weeks. Late homeworks will be accepted, if at all, only for good reasons and at a substantial penalty.

You may submit a homework as many times as you like, with the latest assignment received before grading being the only one considered for a grade. Please submit something before the deadline, even if it is only your name—you can then continue to work on your assignment as desired up until they are graded.

Assignments will be graded for having been turned in and having made a reasonable effort, as well as for a reasonable degree of correctness.

Course Project

There will be a brief course project starting at about week seven. This project may be completed individually or in groups of 2-4 as desired.

Academic Honesty

Cheating on homework or the project will result in a grade of zero on the affected material, and will be reported to appropriate authorities. Plagiarism is a form of cheating. Please do not let me catch you plagiarizing.

Plagiarism: n 1: a piece of writing/work that has been copied from someone else and is presented as being your own work 2: the act of plagiarizing; taking someone's words or ideas as if they were your own.
—www.dictionary.com

If you use code, ideas, or text authored by someone else, cite them. It is OK to get help from external sources of knowledge, but citation is mandatory.