Foojay Podcast #54: Music and MIDI with Java and Kotlin

MIDI turns 40 and still glues every studio together, yet most Java developers never touch the javax.sound package that ships in the JDK. This conversation digs into what that package can do today, where it falls short for real-time music, and how Kotlin and JavaFX fill the gaps. We talk with Atsushi Eno and Geert Bevin in Foojay Podcast #54.

What we talked about

  • MIDI fundamentals and the javax.sound implementation in OpenJDK
  • MIDI Polyphonic Expression (MPE) and why it matters for expressive playing
  • Real-time requirements when Java drives a musical instrument
  • Kotlin adoption for the ktmidi library
  • JavaFX as a UI layer for music software
  • Benefits of the six-month Java release cycle for audio work
  • MIDI on Apple devices and cross-platform challenges
  • Audio plugin development workflows on the JVM
  • Open-source methodology in the music tooling community

Why it matters

Music software lives or dies by latency and precision. Atsushi and Geert show that the JVM holds up well for both, as long as you pick the right APIs and pair them with modern languages like Kotlin. The chat also makes a fair case for keeping javax.sound relevant in 2024.

See the Foojay Podcast #54 for all info, shownotes, links, etc.