Enumerate and Extract Audio Buffers When Debugging C++ Applications - Henning Meyer - ADC 2025
---
We show a method to add introspection capabilities to any C++ application by combining DWARF debug information with simulated execution. For example, we simulate execution of the begin() and end() methods of C++ containers to enumerate all elements of a container. Applying this method recursively to all local and global variables allows us to iterate over all C++ objects in a live process or core dump. Combining this with user-provided information about which types own audio buffers and how the samples are encoded allows us extraction of audio buffers.
---
Henning is a software developer with a PhD in algebraic geometry and five years of professional experience in real-time spatial analysis of radio signals on embedded platforms in C++. He is currently working on legacy enterprise applications that inspired him to write new debugging tools for C++.
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
Bugs I’ve Seen in the Wild - From Confusion to Amazement - Olivier Petit - ADC 2025
---
Join me as we go through a list of bugs I’ve curated over the past few years as a C++ audio developer. From the simplest flawed math expression to obscure C++ name resolution rules and bugs in mainstream compilers, this talk will cover a wide range of defects.
This talk will be useful to any C++ developer regardless of their expertise level. If you are starting out, this will hopefully save you hours of debugging hell. If you are more experienced, this will give you new things to pay attention to when designing software or doing code reviews.
---
After an MSc in Integrated Circuit design, I have joined the Software and Creative department of L-Acoustics in 2018 as a C++ software engineer. Since then, I have been part of our mission to better connect the world’s best artists with their audiences, ensuring everyone gets the sound quality they deserve. Every day we are tackling the challenge of finding ways to deploy audio solution at the largest scale without any compromise on sound quality and system reliability. We are always putting the audience and our users in the centre, making sure all our products, from hardware to software, are as intuitive and easy to use as possible.
Unlike most of my peers, I’m ashamed to reveal that I don’t play any instrument... Instead you will find me on a climbing wall, or riding my Brompton folding bicycles outside of its comfort zone!
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
Perfect Oscillators in Less Than One Clock Cycle - Angus Hewlett - ADC 2025
---
A sequel, of sorts, to my 2024 talk, "Branch-Free Oscillators for fun and profit" - https://www.youtube.com/watch?v=5Les61Hh46w
An implementation of analog-style oscillators in C++ which, by taking maximum advantage of modern processor SIMD architectures, can generate high-quality band-limited waveforms at a cost of less than one clock-cycle per sample on consumer-grade AMD Zen5 CPUs.
The techniques covered are more widely applicable to a range of algorithms and CPUs and include a high-level view of branch-free stream programming and modern SIMD concerns. Intermediate-level C++ and basic knowledge of microprocessor architecture topics are recommended. Basic to intermediate maths/DSP.
---
Angus Hewlett
Technologist, Founder, Product Designer, Engineer, Manager and Mentor.
Founded FXpansion at the turn of the millennium and built software drum machines, synths and utilities for 16 years - work that is still loved and used today by leading artists.
Exited to ROLI in 2016 and joined their team as VP Engineering, managing a cross-disciplinary team of dozens of engineers and designers across software, embedded, hardware, web applications and R&D.
CTO at Image-Line from 2021-2023, spearheading efforts to future-proof their tech stack.
Now a technology and product development consultant engineer, helping companies of all shapes and sizes realise their audio dreams.
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
Demystifying std::memory_order - Timur Doumler - ADC 2025
---
Atomic variables are an important tool for low-latency and real-time audio processing as they are essential to implementing any kind of lock-free algorithm or data structure. In C++, atomic variables are readily available in the Standard Library through std::atomic. However, in order to use std::atomic not only correctly, but also efficiently and performantly, it is crucial to pick the correct memory order for the atomic operation at hand depending on the requirements of the algorithm. This can be accomplished via the std::memory_order parameter that every atomic operation in C++ accepts. Yet memory order in C++ is notoriously hard to reason about and often misunderstood.
In this talk, we give a brief overview over the C++ memory model, why it is needed, and how it maps to what happens in actual hardware. We explain the differences between relaxed, consume, acquire, release, and sequentially consistent memory order, and give practical guidelines for which to use when for working with atomic reads, writes, read-modify-write operations, and memory fences.
---
Timur Doumler is the co-host of CppCast and an active member of the ISO C++ standard committee, where he is currently co-chair of SG21, the Contracts study group. Timur started his journey into C++ in computational astrophysics, where he was working on cosmological simulations. He then moved into the audio and music technology industry, where he has spent over a decade of his career, worked on projects such as NI Kontakt and the JUCE framework, and co-founded the music tech startup Cradle. In the past, Timur also worked for JetBrains, first as a developer on CLion's C++ parser and later as a Developer Advocate for C++ developer tools. Currently, Timur lives in Finland, where he organises the monthly C++ Helsinki meetup and works as an independent C++ consultant. Timur is passionate about clean code, good tools, low latency, and the evolution of the C++ language.
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
From DAW Users to Audio Developers - Teaching JUCE to Creative Minds - Milap Rane - ADCx India 2026
---
Many music production students approach mathematics and programming with hesitation, often seeing them as abstract, intimidating, or disconnected from creativity. Yet effective music production already depends on structured, stepwise problem-solving—an inherently algorithmic way of thinking.
This talk explores how a Polya-inspired problem-solving framework can be adapted to retrain music production students to think algorithmically. By guiding students to understand a problem, break it into smaller steps, test solutions incrementally, and reflect on outcomes, programming becomes a process of structured experimentation rather than mathematical threat. This approach can help more students access the beauty of building their own plug-ins and workflows that can help them create their own creative identities.
Drawing from my own classroom experience teaching C++ and audio software engineering to B.Sc. Sound Engineering students at the Undergraduate level in an Indian University, where most of the students come from a non-Science background, and where mathematics can in some cases even trigger past trauma. How in such cases, can Audio and Music Technology and Software Development be taught and made more accessible is at the crux of this talk. I discuss strategies for reducing fear around mathematics, reframing coding as problem-solving, and cultivating computational confidence in creative learners. The goal is not just to teach syntax, but to reshape thinking—helping students move from passive tool users to engaged builders who approach software engineering with curiosity rather than anxiety.
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
https://audio.dev/ -- @audiodevcon
ADC Japan - 1st - 3rd June
ADC Bristol - 9th - 11th November
---
Level Up! Procedural Game Music and Audio - Towards Richer, More Dynamic Soundtracks for Games and Interactive Audio Experiences - Chris Nash - ADC 2025
---
What if games had access to (and control of) every note in the soundtrack?
What are the limits for gameplay-driven music and music-driven gameplay?
How do you craft a soundtrack that dynamically adapts to the game world?
This talk presents new techniques and technologies for crafting richer, more dynamic music and sound FX to develop more immersive and interactive game soundtracks in both Unity and Unreal – and marks the launch of game music development kits for Manhattan and Klang (C++) on the Unity Store and FAB.com, which will be provided free to ADC 25 delegates.
DETAIL
After a brief moan about the state of the art, the session will provide a practical introduction to technologies for procedural music and audio (see below) before showcasing and deconstructing new game music and audio mechanics, demonstrated through two example games, developed as technology demos (playable at the nash.audio arcade, throughout the conference):
Ars Arcus (2023; video on YouTube; demo on Steam)
As featured at ADC 23 and 24, this defend-the-castle bow-and-arrow VR game was developed in Unity as a test ground for different music mechanics, from simple part layering and stingers, to significantly more sophisticated music generation and dynamic arrangement, including live data sonification (scene-driven musical cues and arrangements) and direct integration between the game and soundtrack (""diagetic"" music for games, affected by player interaction) - notably placing a virtual, and somewhat mortal, NPC orchestra at the mercy of the player, inside the game world.
Future Sound of Bristol (2025; video - playable at ADC 25)
Grander in scale, in every respect, this open-world game features a 1:1 recreation of Britain* - every road, building, and tree, accurate to the metre – developed in Unreal 5. The player starts on foot with the country in ruin and must explore, connect, rewild, and rebuild the land. The entirely procedural soundtrack for the game is driven by the environment: the tone changes from day to night, town to country, and as the player restores harmony to the land, so to the music - haunting, dissonant soundscapes are transformed to tranquil, tonal symphonies. Gameplay, too, is led by the music, providing cues (dynamic leitmotifs) players must use to find resources, vehicle parts, etc., not always visible to the eye, and subtler musical devices that portend to impending events, such as nightfall or storms. For SFX, the game uses procedural audio (in C++, using Klang) to live generate sounds for dynamic elements such as rain, wind, engines and other interactive game elements. The linked video not provides a brief preview of the game world, but demonstrates the procedural soundtrack - let the video loop and keep listening... (* 'limited' to Bristol and the surrounding 10,000km² for the ADC)
Discussion will provide a behind-the-screens look at how the games and their soundtracks were developed, edited, and integrated using Manhattan, Klang, Unity and Unreal, with emphasis on the musical processes and creative workflows.
Both games are being developed as platforms to explore new directions in game audio and music, and our hope is to provide them as a resource that other game developers, composers, and sound designers can explore, play with, and develop for.
---
Chris Nash
Chris Nash is a software developer, composer, educator and researcher in things that go beep in the night. Following a PhD on music software design at Cambridge, he has worked on technology and music projects across academia and industry, including for the BBC, Steinberg/Yamaha, and multiple start-ups
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
https://audio.dev/ -- @audiodevcon
ADC Japan - 1st - 3rd June
ADC Bristol - 9th - 11th November
---
Lock-free Queues in the Multiverse of Madness - Dave Rowland - ADC 2025
---
Lock-free queues are the unsung heroes of audio software systems, quietly enabling ultra-low latency and thread-safe communication across a dizzying variety of scenarios. But just like navigating a multiverse, the world of lock-free queues is filled with many different variants-each with their own quirks, trade-offs, and hardware demands.
In this talk, we’ll embark on a journey through this multiverse, starting with the simplest dimension: the single-producer, single-consumer queue. We’ll uncover why lock-free designs often outshine traditional lock-based approaches in real-time audio environments, and explore various implementations along with their pros and cons.
From there, we’ll warp into more complex realities featuring single-producer, multi-consumer and multi-producer, multi-consumer queues. Along the way, we’ll tackle mind-bending concepts like memory ordering, cache coherence, and platform-specific behaviour.
By the end of this adventure, you’ll have the insight needed to confidently select and implement the perfect lock-free queue for your audio projects-no matter how mad the multiverse gets.
---
Dave Rowland is the CTO at Audio Squadron (owning brands such as Tracktion and Prism Sound), working primarily on the digital audio workstation Waveform, and the engine it runs on. David focuses on the architecture and real-time elements of the software.
In academia, David has taught on several modules at the University of the West of England on programming for audio. David has a passion for modern C++ standards and their use to improve code safety and brevity, has spoken at Meeting C++, C++ on Sea, C++ Online and is a regular speaker at the Audio Developer Conference and related monthly meetup. Past presentations: https://github.com/drowaudio/presentations/
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
https://audio.dev/ -- @audiodevcon
ADCx Copenhagen - 28th April
ADC Bristol - 9th - 11th November
---
Efficient Task Scheduling in a Multithreaded Audio Engine - Algorithms and Analysis for Parallel Graph Execution - Rachel Susser - ADC 2025
---
The engine of an audio application is responsible for executing tasks in a sequence that ensures prerequisites are completed before dependent tasks begin. However, computing resources are limited, even on modern, multi-core machines, and there are often more ready tasks than there are threads available to execute them. How can programs determine which tasks to assign to which threads and in what order? Are there specific challenges when it comes to scheduling tasks in real-time audio applications? How do different approaches to scheduling impact performance? This talk will address these questions and describe in particular the impact of using work-stealing queues to schedule audio processing tasks in a DAW.
---
Rachel Susser is a software engineer with over 10 years of industry experience developing real-time audio software in C++. She has worked at both the operating system and application level for companies including ROLI, Apple, and Ableton, where she is currently works on Live's audio engine. She co-coordinates the Audio Developer Meetup Berlin and is the founder of the Better Code Study Group at Ableton. Rachel is also a musician, most often seen playing flute.
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
https://audio.dev/ -- @audiodevcon
ADC Japan - 1st - 3rd June
ADC Bristol - 9th - 11th November
---
Creative Coding - Geometry and OpenGL with Audio - Jake Morgan - ADC 2025
---
This talk explores the intersection of creative coding, geometry, and computational sonics, demonstrating how geometric concepts and algorithms not often seen in DSP can be used as a modulation source or for audio playback. We'll cover general relationships and practical methods for translating shapes, patterns, and spatial relationships into dynamic audio processes.
Building on these experimental approaches we'll discuss strategies to create standalone creative applications as well as commercial plugins. Examples will transform geometric concepts and visuals into performant DSP with C++ and OpenGL. Attendees will leave with insights for generative audio, modulation systems, and experimental GUI design, bridging the gap between abstract experimentation and market-ready tools.
Whether you're a DSP engineer, sound designer, or toolmaker, this talk offers fresh perspectives on turning mathematical beauty into functional audio products.
---
Jake Morgan
Jake Morgan deems himself an experimental tool and sound maker. He is based in Los Angeles, California and is finishing his Bachelor's degree at California Institute of the Arts in Music Technology. His current obsession is creating relationships between geometry and computational sonics. While this obsession is his current endeavor, many of his past works focus on algorithmic composition and algorithmic signal processing alongside free plugin releases and releasing music under his artist name 'public services'
Jake would happily talk your ear off about DSP or whatever incredible album he discovered that week. He loves diving deep into the details and thrives on learning as much as possible. Above all, he’s really looking forward to meeting everyone and soaking up all the knowledge he can.
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon
Community & Sharing in Native Audio Apps - Without Browser Overhead - Johannes Bochmann - ADCx Gather 2025
Many audio applications would benefit from built-in community features — like user-curated preset libraries, collaborative content creation, and user-to-user interaction — but typical solutions often mean bloated browser frameworks or complex backend infrastructure.
This talk introduces a modular, lightweight framework that lets you embed these features directly into your native C++ audio applications, without relying on embedded browsers or third-party servers. We’ll explore how structured content, flexible access rules, and a built-in credit system enable shared presets, gated access, revenue sharing, and more — all seamlessly integrated within your app.
Through practical strategies and real-world examples — such as turning a synthesizer into a self-sustaining ecosystem — you’ll learn how to lower onboarding friction, boost user participation, and unlock new monetization models by empowering your users to create, contribute, and engage.
---
Johannes Bochmann
Johannes is a C++ developer with a unique background in both computer science and music synthesis. He's passionate about tools that empower communities and creative expression.
In past lives, he ran a club in Berlin, juggled a few interesting gigs, and always kept one foot in the world of music and technology. When he's not coding, you’ll probably find him up in the air paragliding or soaking in the quiet of nature.
---
ADC is an annual event celebrating all audio development technologies, from music applications and game audio to audio processing and embedded systems. ADC’s mission is to help attendees acquire and develop new audio development skills, and build a network that will support their audio developer career.
Annual ADC Conference - https://audio.dev/
https://www.linkedin.com/company/audiodevcon