igorski / MWEngine

Audio engine and DSP library for Android, written in C++ providing low latency performance within a musical context, while providing a Java/Kotlin API. Supports both OpenSL and AAudio.
MIT License
259 stars 45 forks source link

Move sequencer related logic to sequencer namespace #100

Open igorski opened 4 years ago

igorski commented 4 years ago

Sequencing works via three actors:

Sequencer (static, collects events to playback at given time) AudioEngine (static, caches properties of the sequencer - time as samples -) SequencerController (constructor, directly modifies AudioEngine properties)

It is likely that SequencerController has a constructor for SWIG purposes when exposing it to Java (should still be possible to be exposed as a static class).

Move all cached properties out of the AudioEngine and into the sequencer to declutter the engine.