Membership plan: Just Curious | Topics: Creative Coding
Course overview
Android is the leading mobile operating system, with billions of active devices worldwide.
What you'll learn
Be familiar with the Android development environment
Understand the logic behind real time audio processing app on the platform
Create GUI controls to interact with the sound
Implement a sequencer based application
Who is this course for?
In this workshop you will learn the fundamental principles needed to create high performance audio apps on the platform. From the basic setup to the creation of a sequencer based app, we will cover every aspect you need to build your own version of what a great Android audio application should be.
Course content
Course notes week 1
Part 1 - Introduction
Part 2 - Creating a new Android Studio project
Part 3 - Android Studio quick tour
Part 4 - Development environment setup
Part 5 - Project structure
Part 6 - First application code
Part 7 - Android Debugging 101
Course notes week 2
Session 2 downloads
Part 1 - Android NDK and CMake installation
Part 2 - Android NDK - JNI
Part 3 - Native C++ project creation
Part 4 - Native project structure
Part 5 - The Oboe library
Part 6 - Setting up a project with Oboe
Part 7 - First native function
Part 8 - Start-stop audio engine calls
Part 9 - Audio app architecture
Part 10 - Audio stream creation
Part 11 - The audio processing callback
Part 12 - Sine wave generation
Part 13 - Device disconnection event
Part 14 - Optimal latency
Week 3 download materials
Week 3 session handout
Part 1 - Android UI architecture
Part 2 - Constraint Layout
Part 3 - UI creation in Android Studio
Part 4 - Controls implementation logic
Part 5 - Detecting view change
Part 6 - UI to audio engine communication through JNI
Part 7 - Audio Engine code
Part 8 - Connecting the methods
Part 9 - Real time input
Part 10 - UI components synchronisation
Part 11 - Frequency value range
Part 12 - Custom Pad View
Part 13 - Pad radius computing
Part 14 - Custom drawing implementation
Part 15 - Pad touch-event and param update handling
Week 4 download materials
Week 4 course notes
Part 1 - Sequencer app specs
Part 2 - Forcing landscape orientation
Part 3 - View binding
Part 4 - Spinner View for pitch selection
Part 5 - Audio engine sequencer code
Part 6 - Step on-off logic
Part 7 - Step pitch change logic
Part 8 - Current step visual feedback
Part 9 - Going further ideas
Part 10 - Discussion with Marek from Koala sampler
Requirements
A computer and internet connection
A webcam and mic
A Zoom account
A basic familiarity with Java or C++ and audio processing
An Android phone or tablet
A usb cable to connect the phone/tablet to your computer
Meet your instructor
After 6 years working for Arturia - moving from software development to product management - Baptiste founded Meteaure Studios to build music making apps for Android and empower the next generation of mobile producers.
When you login first time using a Social Login button, we collect your account public profile information shared by Social Login provider, based on your privacy settings. We also get your email address to automatically create an account for you in our website. Once your account is created, you'll be logged-in to this account.
DisagreeAgree
I allow to create an account
When you login first time using a Social Login button, we collect your account public profile information shared by Social Login provider, based on your privacy settings. We also get your email address to automatically create an account for you in our website. Once your account is created, you'll be logged-in to this account.