more than 250 slides related to the Embedded Linux audio training from Bootlin
https://bootlin.com/training/audio/
Objectives
Be able to understand the basics of audio theory: analog vs. digital, sampling theory, audio formats and audio hardware
Be able to understand the architecture of ASoC, the Linux kernel subsystem for audio devices used in embedded systems, the role of the different drivers and the Device Tree representation
Be able to write a Device Tree describing the topology of audio hardware on an embedded Linux system
Be able to use complex audio routing capabilities, audio power management capabilities, and complex audio components such as auxiliary devices or amplifiers
Be able to configuration the ALSA user-space components and ALSA audio widgets
Be able to understand the available user-space APIs for playing and capturing audio, as well as audio servers such as Pulseaudio, Pipewire or Jack, and the GStreamer multimedia pipeline library