This course is a deep dive into how Bela processes data, how to think in real time, and how to implement interaction with sensors and sound. As well as the basics of coding interaction, this course also introduces concepts of real-time processing and dives into topics like Assembly programming and audio processing.This course will be released weekly on the Bela YouTube channel. Subscribe, and enable alerts so you'll know when new lectures drop! youtube.com/belaplatform
Learning Audio Programming with Bela
We will embedding the lectures here as they go live on our YouTube channel.
Lecture 0: Setting Up
Lecture 1: Real Time
Lecture 2: Playing back Samples
Lecture 3: Wavetables
Lecture 4: Parameter Control
Lecture 5: Classes and Objects
Lecture 6: Analog I/O
Lecture 7: Digital I/O
Lecture 8: Filters
Lecture 9: Timing
Lecture 10: Latency
Lecture 11: Circular Buffers
Lecture 12: Envelopes
Lecture 13: State Machines
Lecture 14: ADSR
Lecture 15: MIDI (Part 1)
Lecture 16: MIDI (Part 2)
Lecture 17: Block-Based Processing
Lecture 18: Phase Vocoder (Part 1)
Lecture 19: Phase Vocoder (Part 2)
Lecture 20: Phase Vocoder (Part 3)
Lecture 21: ARM Assembly Language
Should I know anything before starting?
This course was designed for students who already have some digital signal processing knowledge. If you have some that's great, but if not you'll learn about these concepts in this course.
What's the course content?
This course is a deep dive into how Bela processes data, how to think in real time, and how to implement interaction with sensors and sound. As well as the basics of coding interaction, this course also introduces concepts of real-time processing and dives into topics like Assembly programming and audio processing.
But I don't know any C++!
This is the ideal way to learn! This course is full of concise explanations and hands-on lessons. If you have a Bela system you can follow along at home, and the examples are here and freely available for you to download and examine.
Who is this course for?
Bela's mission has always been to make high-performance computing accessible to all. This isn't just a course for engineers - this is a course geared at people who have a bit of technical knowledge, and want to improve their C++ skills by learning how to implement interaction with audio and sensors using the Bela platform.
Where can I find this course?
This course will be released weekly on the Bela YouTube channel. Subscribe, and enable alerts so you'll know when new lectures drop. The course materials including slides and examples are in the course Github repo.
Where did this course come from?
Bela was born in the Augmented Instruments Laboratory at Queen Mary University of London, and one of its earliest applications was as a learning platform for a masters-level course now called Music and Audio Programming. This course is an online adaptation of that course. That course is offered on degree programmes including:
- MSc in Sound and Music Computing, a one-year Master's programme
- PhD in Artificial Intelligence and Music, a 4-year PhD programme with fully-funded studentships for UK and international students
Who's teaching it?
This course is presented by Bela's creator, Dr Andrew McPherson.