Android Audio Development Fundamentals - On-demand


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.

Subscribe
Notify of
guest

Inline Feedbacks
View all comments
About
Privacy

0
Would love your thoughts, please comment.x
()
x