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

Oldest
Newest Most Voted
Inline Feedbacks
View all comments
About
Privacy

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