MD6055 - Audio Plug-in Coding (2025/26)
Module specification | Module approved to run in 2025/26 | ||||||||||||
Module title | Audio Plug-in Coding | ||||||||||||
Module level | Honours (06) | ||||||||||||
Credit rating for module | 15 | ||||||||||||
School | School of Computing and Digital Media | ||||||||||||
Total study hours | 150 | ||||||||||||
|
|||||||||||||
Assessment components |
|
||||||||||||
Running in 2025/26(Please note that module timeslots are subject to change) |
|
Module summary
In this module, you will be introduced to the field of coding for audio plug-ins, a fast-growing employment market. By taking this module you will have the opportunity to develop simple plugins for audio applications such as Logic, Ableton Live, Pro Tools and Cubase, using VST, VST3, AU, AUv3, AAX and LV2 formats in an accessible way.
You will cover digital signal processing concepts in the context of coding and producing them within the JUCE framework. By doing so, exploring their application in music and audio scenarios, ultimately working towards developing them into audio plugin devices.
Throughout the course of the module, you will explore the JUCE framework and basic C++ coding for audio plug-ins in a series of workshops and exercises, where you will work to develop a range of simple audio devices for a final portfolio submission.
This module aims to:
• Introduce student's to C++ programming for music.
• Develop skills working in the JUCE framework, in order to create audio plugins.
• Develop skills in digital signal processing.
• Enable student's to produce simple audio plugins.
Prior learning requirements
Student should have prior experience in using audio plugins or basic coding in C++.
Syllabus
• Introduction to programming audio plugins. (LO1)
• Digital Signal Processing. (LO2)
• JUCE Framework. (LO1)
• Frequency Equalisation (EQ), compression, saturation and delay effects. (LO1, 2)
• Developing audio plugins in JUCE and C++. (LO1)
• Making a GUI. (LO1)
Balance of independent study and scheduled teaching activity
Students will learn in weekly classes, comprising of workshops and exercises in the IT labs. These workshops will explore the JUCE framework and applying problem solving algorithms in coding in C++. Classes and workshops total 36 hours of contact time across the semester.
The learning and teaching in classes will be supported by the University’s VLE and a blended learning approach, sharing class materials, recommended reading. Examples of code, plugins and online tutorials will be made available weekly on the VLE, giving the student's materials to practice outside of classes. Tutorials will also be offered to support students in the preparation of their assessments.
In addition, students will undertake independent study, including researching, assessment planning and portfolio development.
Students will engage in reflective practice, reviewing their own, and each other’s developed plugins in group seminars and feedback sessions.
Learning outcomes
At the end of this module, you should be able to:
LO1. Develop basic audio plugins using C++ and the JUCE framework.
LO2. Demonstrate an understanding of digital signal processing approaches.
LO3. Explain their work in a reflective account.
LO4. Demonstrate problem solving skills in a programming project.
Bibliography
https://rl.talis.com/3/londonmet/lists/15E71BD5-20C9-9CD5-A831-DA7D75367CD4.html?lang=en&login=1
Core Reading:
• Pirkle, W.C., 2019. Designing audio effect plugins in C++: for AAX, AU, and VST3 with DSP theory. Second edition ed. New York: Routledge, Taylor & Francis Group.
• Robinson, M., 2013. Getting started with JUCE: leverage the power of the JUCE framework to start developing applications. Birmingham: Packt Publishing.