Audio Programming


Fundamental audio programming skills

In Short:

Audio Programming is a second-semester course designed for students who have completed "Programming Fundamentals" and possess basic functional programming skills and knowledge of C++. This 12-week course focuses on applying programming concepts and skills specifically to the audio pipeline.

The course assumes that students have a good understanding of classes and objects, which will be important for working with audio. Students will build upon their foundational knowledge of C++ and learn how to apply their programming skills to audio applications.
Evaluation and assignments:

Throughout the course, students will cover the basics of digital signal processing and learn how to implement audio effects algorithms in C++. They will also gain experience working with audio data, including audio file input/output, audio processing, and audio synthesis.

Learning goals and outcomes:

By the end of the course, students will have a solid understanding of audio programming concepts and will be able to develop their own audio applications and plugins using C++ and the JUCE framework.



A key component of the course is the JUCE framework, a popular toolkit for audio application and plug-in development. Students will learn how to use JUCE to develop audio plugins, enabling them to create their own digital audio effects or virtual instruments.

This course is taught by our resident programming guru Tom Tesch