C++ in the Audio Industry
summary
C++ powers production tools at ROLI and libraries like JUCE and underpins samplers such as KONTAKT; audio code runs with 44,100 Hz sampling and audio buffers typically sized 32–1024 samples so callbacks must finish within ≈1 ms to avoid audible dropouts. Real work uses lock-free ring buffers for message and audio-frame transfer, atomic primitives and pointer swapping (std::atomic loads/stores of shared_ptr) plus a release-pool to defer deletes, preallocated locked memory for samples, and avoidance of blocking or heap allocations to guarantee hard real-time behavior.
AI-written summary · about
chapters (9)
- 0:00Introduction to C++ in audio
- 3:09What is the audio industry
- 8:04How audio data is represented
- 15:41Hard realtime programming in audio
- 24:50Lock-free programming for audio
- 34:00Synchronizing audio and GUI threads
- 44:45Atomic shared pointers in audio
- 53:15Lock-free queues for audio data
- 58:50Summary and Q&A
related talks
31mIt's so quiet. Let's make music.
46mMaking Noise with Kotlin Native
47mIs .NET any good for Audio?
23mAudio Programming with Go
47mLearning Music — Developer Edition
01h 03mOne Man Band AAAudio Department
01h 03mNavigating 50 Years of Evolution in Interactive Audio
30mProgramming for entertainment: Music and its perpetual inertia
