Join Us For ADC24 - Bristol - 11-13 November 2024
More Info: https://audio.dev/
@audiodevcon
Procedural Sound Design Applications - From Embedded to Games - Aaron Myles Pereira - ADCx India 2024
Procedural Sound Design, defined by its adaptability and real-time generation capabilities, offers newfound possibilities in crafting immersive and dynamic auditory experiences. In this presentation, we will explore its key principles, benefits, and applications across two diverse domains: vehicles and video games.
_
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC24 Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Prashant Mishra
Real-time Confessions in C++: The Most Common “Sins” in Real-Time Code - Fabian Renn-Giles - ADC 2023
This talk examines the most prevailing misconceptions and frequent errors encountered when audio developers handle real-time code in C++. With my background as a contractor in the audio industry, I’m often called in to help fix subtle bugs in, or review code with real-time constraints. Yet, I see (and have myself made) the same type of mistakes over and over again resulting from a few common misconceptions of real-time C++ code.This talk offers an in-depth analysis of each of these misconceptions, debunking them with compelling examples from the audio industry.
Ranging from the ignorance of C++'s data-safety rules altogether, to the overuse of std::atomic and misbeliefs about the forbidden usage of locks and exceptions in real-time code, this presentation navigates the landscape between the theoretical rules of the C++ standard and real-world practical realities. This talk is an essential guide for developers seeking to avoid common pitfalls and write more efficient, reliable real-time code.
_
Link to Slides: https://docs.google.com/presentation/d/1rJNebpRg3xJO4AiE5AntrkEKIXRta25DCOxHxDMzC0c
_
Fabian Renn-Giles
Fabian is a freelance C++ programmer, entrepreneur and consultant in the audio software industry. Before this, he was staff engineer at ROLI Ltd. and the lead maintainer/developer of the JUCE C++ framework (www.juce.com) - an audio framework used by thousands of commercial audio software companies. Before joining ROLI, he completed his PhD at Imperial College London, developing a numerical quantum optics solver with modern digital signal processing techniques and C++/MPI/OpenCL. Fabian is now a regular consultant specializing on low-level real-time C++, embedded audio, time sensitive networks, audio over WiFi and audio plug-in formats. His clients range from early startups to FAANG companies. Additionally, he is a regular speaker at the audio developer conference ADC and other C++ conferences.
_
Streamed & Edited by Digital Medium Ltd: https://online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC23 Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Prashant Mishra
Workshop: Dynamic Cast: Practical DSP & Audio Programming - Emma Fitzmaurice, Harriet Drury, Anna Wszeborowska and Alex Korach - ADC 2023
Dynamic Cast: Practical DSP and Audio Programming
We'll explore the concepts of Karplus Strong Synthesis. This is a physical modelling synthesis, aiming at modelling a plucked instrument such as a guitar. Included DSP will be noise generation, delay lines and filters. We'll also touch on MIDI messaging and polyphony.
We'll be using the Cmajor platform for the practical aspect of this workshop. Knowing Cmajor upfront is not a pre-requisite; we'll guide the participants through the implementation gently.
This will be a self-contained workshop aiming to be accessible to all levels of learning - all elements used in the practical part of the workshop will be thoroughly explained in the introduction.
Dynamic Cast - Who Are We?
Dynamic Cast is a peer-to-peer C++ study group, a safe space for underrepresented groups (women, LGBTQIA+, minority ethnic). The Dynamic Cast workshop at ADC is designed to create an entry point to the industry for newcomers, everyone is welcome.
Link to Slides: https://data.audio.dev/2023/talks/practical-dsp-and-audio-programming
_
Emma Fitzmaurice
Emma Fitzmaurice is a QA engineer on the Novation team at Focusrite, sticking her fingers into as many parts as the hardware development pie as possible in an effort to make cool gear. She is charming, beautiful, wise and the proud author of her own bio.
_
Harriet Drury
_
Anna Wszeborowska
Anna is a freelance software developer and a PhD student at the Creative Computing Institute, University of the Arts, London. She’s worked on music production and live performance tools for the last 8 years. During her time at Ableton she contributed to the integration of the company's flagship product Live with Cycling ’74’s Max, worked on the second edition of Ableton's hardware product Push and was part of the team responsible for the company's instruments and effects. Anna will be happy to chat about the use of AI in live performance, learn about your favourite tools for rapid prototyping and see pictures of your pets.
_
Alex Korach
Alex Korach works as a software engineer in the Max for Live team at Ableton, helping take care of the integration between Max/MSP and Live. Former dev at Native Instruments, where she was involved in the development of products such as Massive X, Guitar Rig, Maschine and Komplete Kontrol.
_
Streamed & Edited by Digital Medium Ltd: https://online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC23 Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Prashant Mishra
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
Democratization of Audio Dev: How it Started, Where it's Going - Aurelius Prochazka
In 2018, I gave a keynote at the ADC Conference in London. In that keynote, I discussed how audio developers can benefit from opening development to all, and how to escape the errors of past and design for the future. What did I get wrong? Did I get anything right? In this talk I'll give an overview of where we are now and update where things might be going.
I'm Aurelius Prochazka, I am the founder of AudioKit, an open-source audio generation, processing, and analysis framework for the Apple ecosystem. I am a partner in AudioKitPro LLC, a company started to use the AudioKit framework to develop audio applications. Currently, AudioKit has delivered more synthesizer apps on iOS ever, including the most #1 charted music apps ever and the perennial global favorite, the free AudioKit Synth One.
In 2018 I traveled to London to give one of the keynotes for ADC in London. I have a Ph.D. from the California Institute of Technology in Computational Fluid Dynamics.
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
Processing Audio Post Production Deliverables at Scale with Microservice Architecture - Ryan Frias - ADCx SF
With the explosion of streaming services that operate on a global footprint, the audio mastering pipeline has ballooned to include as many as 765 unique language audio packages created from original, each of which needs to be quality checked, encoded and packaged for delivery. The process can take weeks and involves creative and technical teams working to make derivative versions which must preserve the original creative intent as much as possible. The "Coda" Automated Media Ecosystem is a new extensible software platform from Skywalker Sound that automates the creation of soundtrack versions and cuts the deliverable process down from weeks to faster-than real-time. The system has already been used on premium Disney+ releases such as The Mandalorian and Moon Knight.
By automating soundtrack mastering processing from the highest original source mix format (often the Dolby Atmos mix), the automatically derived versions can be created with the same fidelity and attention to detail as the original language, improving the experience for all consumers in international markets. As the process is automated without the possibility of human error, the need to QC each pass is reduced, resulting in better results for consumers and considerable time and cost savings for content owners.
The creation of this complex media pipeline ecosystem involved the integration of multiple programming languages, frameworks, environments and hardware systems for the full stack--from low-level digital signal processing, to high level scaffolds, such as a global service mesh.
Slides: https://data.audio.dev/talks/ADCxSF/2023/audio-in-midi-out/slides.pdf
_
Ryan Frias
Ryan is a software engineer from Skywalker Sound. He has worked in the post production sound industry for over 15 years, focusing on both the creative and technical bits.
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
Using Faust in JUCE Projects - Julius Smith - ADCx SF
Faust (Functional AUdio STream) is a domain-specific functional programming language for sound synthesis and audio processing (https://faustdoc.grame.fr). Faust development is routinely an order of magnitude faster to write and debug than C++, and the run-time performance is usually within a factor of two. Development is further facilitated by the large Faust Libraries collection of signal-processing functions (https://faustlibraries.grame.fr). Since Faust compiles to C++, it is natural to integrate C++ header files generated by the Faust compiler into a JUCE project or the like. A limitation encountered is that Faust's powerful pattern-matching facility requires its "macro arguments" to be bound at compile time, i.e., not signals or controller parameters. An example is the filter order in Faust's filter-design functions. When these arguments need to change at run time, it can make more sense to translate Faust to C++, so that the recursive pattern-matching in Faust is replaced by recursive C++ functions. Experience using ChatGPT-3.5 and ChatGPT-4 for this purpose and others will be summarized.
_
Julius Smith
Professor Emeritus of Music and by courtesy Electrical Engineering, Stanford University, based at the Center for Computer Research in Music and Acoustics (CCRMA). Activities include teaching courses in signal processing and music technology, graduate student advising, and research in signal processing applied to music and audio. https://ccrma.stanford.edu/~jos/
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
DDSP-VST: Neural Synthesis for All - Nikhil Bhanu & Wilson Zhao - ADCx SF
We present DDSP-VST, a cross-platform audio plugin for real-time neural audio synthesis built using TensorFlow Lite and JUCE. DDSP is the underlying ML research behind this project that lets you combine the interpretable structure of classical DSP elements such as filters, oscillators, reverberation etc. with the expressivity of deep learning. This technology enables us to transform a given audio signal into any musical instrument by extracting the pitch and loudness and using those features for synthesis. In this talk we will discuss the technical and UX challenges of building an audio plugin powered by machine learning and making it accessible to musicians and artists.
_
Nikhil Bhanu
Audio software generalist with a passion for real-time systems, signal processing, musical interfaces and machine learning.
Wilson Zhao
Electronic music enthusiast + event organizer. Passionate about combining multimodal generative AI + creativity.
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
Test Strategies for Multi-Threaded Code - Ryan Avery - ADCx SF
Multi-threaded code can be complicated. Realtime multi-threaded code even more so. And testing that code? Too often we give up faster than we can say “integration test”. But by switching around your thinking and adopting a few key strategies, you can start to tame the complexity and gain back a little bit of confidence in your critical code.
Slides: https://data.audio.dev/talks/ADCxSF/2023/test-strategies-for-multi-threaded-code/slides.pdf
_
Ryan Avery
Ryan is an audio software engineer who has worked in the industry for over 15 years. He is passionate about software quality and best practices in real-time audio software development. At Avid Technologies, he developed the Pro Limiter and Pro Multiband Dynamics plugins for Pro Tools. At Dolby Laboratories, Ryan helped develop a suite of plugins for producers to create spatial music in Atmos.
Ryan currently works at Apple, and is an active music producer under the alias of Chance's End, where he brings violin to the front of electronic production.
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
Using & Implementing Differential Reference Counting in Realtime Audio Code - Palmer Hogen - ADCx SF
Safely sharing dynamic memory across threads – especially when some of those threads have strict time deadlines – is a tricky problem space; unfortunately this scenario appears in realtime audio code. Some threads may still be accessing old data, so algorithms need to carefully avoid deleting anything still in-use.
Many deferred-reclamation strategies have emerged to address this risk, but these techniques have a general tradeoff between ease-of-use and throughput; ideally we would like both!
This talk presents a variant of traditional reference counting, which offers improved throughput at the expense of a more limited API.
_
Palmer Hogen
Musician & Programmer; Software Engineer @ Roblox
Edited by Digital Medium Ltd - online.digital-medium.co.uk
_
Organized and produced by JUCE: https://juce.com/
_
Special thanks to the ADC Team:
Sophie Carus
Derek Heimlich
Andrew Kirk
Bobby Lombardi
Tom Poole
Ralph Richbourg
Jim Roper
Jonathan Roper
Join Us For ADC23 - London - 13-15 November 2023
More Info: https://audio.dev/
@audiodevcon
TX/RX Part 1: Workbenching Neural Audio Solutions - Kieran Coulter - ADCx SF
Deploying neural audio solutions to hardware requires a robust design/deploy build system, and usually requires minimizing compute and reducing algorithm latencies to realtime. In Part 1 of this 2-part talk series, we will examine various shortcuts for workbenching (open source) neural audio DSP solutions on the host system.