Tag: programming

Real-time Confessions in C++ – Fabian Renn-Giles – ADC23

  • Lobby
  • Tag Archives: programming

https://audio.dev/ -- @audiodevcon​
_

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

#adc #audiodev #cppprogramming #audio

Filed under: UncategorizedTagged with: , , , , ,

Building AI Music Tools: An Engineer’s Guide to Prototyping – Jamie Pond – ADC23

  • Lobby
  • Tag Archives: programming

https://audio.dev/ -- @audiodevcon​

Building AI Music Tools for the 99%: An Engineer’s Guide to Prototyping - Jamie Pond - ADC23

How to go from idea, to lo-if prototype, to validation, to hi-fi prototype to production.
Exploring the method we used to develop and ship 3 large appeal consumer audio apps this year, to millions of users.

Link to Slides: https://data.audio.dev/talks/2023/an-engineers-guide-to-prototyping/slides.pdf
_

Jamie Pond
_

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

#adc #audiodev #ai #audio

Filed under: UncategorizedTagged with: , , , , , ,

An Open Dialog Between Mix Engineers and Audio Software Developers – Andrew Scheps – ADC23

  • Lobby
  • Tag Archives: programming

https://audio.dev/ -- @audiodevcon

Exploring new opportunities in audio software development: an open dialog between mix engineers and audio software developers - Andrew Scheps - ADC 2023

Andrew Scheps has been working in record production for 35 years and has used all available technologies along the way (except wire recorders and wax cylinders). The advent of real time digital audio processing has obviously completely changed the industry in the last 30 years, but with the explosion of immersive formats and more complicated productions the wish list is ever changing. There has been a simultaneous explosion in tools that can be used to develop the solutions creators want and need. This will be an open discussion between audio developers and the end users who use their tools every day. The goal is to not only cover what professionals wish existed, but also what developers are excited about making.

Link to Slides:
_

Andrew Scheps

Andrew Scheps has worked with some of the biggest bands in the world: Green Day, Red Hot Chili Peppers, Weezer, Audioslave, Black Sabbath, Metallica, Linkin Park, Hozier, Kaleo and U2. He’s worked with legends such as Johnny Cash, Neil Diamond and Iggy Pop, as well as indie artists such as Low Roar, My Brightest Diamond, Motorpsycho, Manu Chao, Tinariwen, Cass McCombs and Blood Red Shoes.

Andrew has been awarded Grammys for his work with Adele, Red Hot Chili Peppers and Ziggy Marley, and his work has garnered over 20 nominations in categories such as Best Rock Song, Best Rock Album and Best Hard Rock Performance. In addition, Andrew was named International Engineer of the Year Award by the UK’s Music Producers Guild.
Though starting out as a musician, Andrew found that what he enjoyed most was working behind the scenes. He toured with Stevie Wonder and Michael Jackson, but he found his home in the studio, working for producers such as Rob Cavallo, Don Was and Rick Rubin. He has also produced Favez, Gogol Bordello, The Duke Spirit, Motorpsycho, Marti Pellow, and Low Roar among others.

In 2011 Andrew started Tonequake Records, a boutique indie label with acts including Low Roar, Favez, Fellow Robot, Act Rights, and Jeff Babko.
After 25 years in Los Angeles, Andrew relocated to the UK in July 2015 where he set up his own mix room which is now equipped for Dolby Atmos Music and Sony 360.

He also develops custom software for controlling Pro Tools to make his life easier.
_

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

#audiodevcon #mix #mixing #softwaredeveloper

Filed under: UncategorizedTagged with: , , ,

Democratization of Audio Dev: How it Started, Where it’s Going – Aurelius Prochazka – ADCx SF

  • Lobby
  • Tag Archives: programming

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.

Slides & Resources: https://data.audio.dev/talks/ADCxSF/2023/democratization-of-audio-dev/slides.pdf


_
Aurelius Prochazka

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

#audiodevcon #audiodev #opensource

Filed under: UncategorizedTagged with: , , ,

Processing Audio Post Production Deliverables at Scale with Microservice Architecture – Ryan Frias – ADCx SF

  • Lobby
  • Tag Archives: programming

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

#audiodevcon #audiodev #coda

Filed under: UncategorizedTagged with: , , ,

Using Faust in JUCE Projects – Julius Smith – ADCx SF

  • Lobby
  • Tag Archives: programming

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

#audiodevcon #audiodev #midi

Filed under: UncategorizedTagged with: , , , , ,

DDSP-VST: Neural Synthesis for All – Nikhil Bhanu & @wilzh40 – ADCx SF

  • Lobby
  • Tag Archives: programming

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

#audiodevcon #audiodev #vst

Filed under: UncategorizedTagged with: , , , ,

Test Strategies for Multi-Threaded Code – Ryan Avery – ADCx SF

  • Lobby
  • Tag Archives: programming

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

#audiodevcon #audiodev #softwaretesting

Filed under: UncategorizedTagged with: , , , ,

Using & Implementing Differential Reference Counting in Realtime Audio Code – Palmer Hogen – ADCx SF

  • Lobby
  • Tag Archives: programming

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

#audiodevcon #audiodev #midi

Filed under: UncategorizedTagged with: , , , ,

TX/RX Part 1: Workbenching Neural Audio Solutions – Kieran Coulter – ADCx SF

  • Lobby
  • Tag Archives: programming

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.

Slides: https://data.audio.dev/talks/ADCxSF/2023/workbenching-neural-audio-solutions/slides.pdf
_
Kieran Coulter

Audio software developer with specializations in 3D Audio and Neural Voice Processing

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

#audiodevcon #audiodev #neuralnetworks

Filed under: UncategorizedTagged with: , , ,