Giter Club home page Giter Club logo

bela-online-course's Introduction

C++ Real-time Audio Programming with Bela

This is the repository for the assets for the first free online Bela course, released in Spring 2020.

Frequently Asked Questions

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.

What will I learn in this course?

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. See the below table for an overview of the topics covered:

Programming topics Music/audio topics
Working in Real-Time, Buffers and arrays, Parameter control Oscillators, Samples, Wavetables
Classes and objects, Analog and digital I/O, Filtering Filters, Control voltages, Gates and triggers
Circular buffers, Timing in real time, State machines Delays and delay-based effects, Metronomes and clocks, Envelopes
MIDI, Block-based processing, Threads ADSR, MIDI, Additive synthesis
Fixed point arithmetic, ARM assembly language Phase vocoders, Impulse reverb

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.

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 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:

Who's teaching it?

This course is presented by Bela's creator, Dr Andrew McPherson.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.