Back To Schedule

Using Kotlin/Compose Multiplatform to Revive a Historic Multiplayer Online Drum Machine

20:30 - 20:50 | Friday 26th September 2025 | ADCx Gather
Beginner
Intermediate
Advanced

Kotlin/Compose is a powerful tool for multi-platform development. But it lacks audio support. I have implemented a simple audio API that you can use to write an interactive app that will run on Linux, Mac or Windows desktops, on Android, and on the web. The web port uses WASM and the WebAudio AudioWorkletProcessor. Network communication uses ktor and a WebSocket proxy to communicate with the original TCP based server. I used these new APIs to restore a multiplayer poly-rhythmic interactive web drum that was originally written as a Java Applet. The applet was popular in the 1990’s but stopped working when Java was banned from the browser. I will demonstrate how to use Kotlin/Compose, and the new audio and networking APIs and discuss the challenges involved. I will also discuss the audio engine and the timestamps used to synchronize the tracks. If the demo gods are willing, I will then lead the audience in a multiplayer drum jam.

Phil Burk

VolumetricCondensed