Applications (media players, browsers, GStreamer-based tools etc.) generate audio streams and communicate through either the native PipeWire API or compatibility layers for other systems (Jack, PulseAudio, ALSA).
PipeWire daemon receives these audio streams and constructs a processing graph to handle mixing, routing, and scheduling of audio from multiple sources simultaneously.
Session manager (WirePlumber) applies policy decisions including device selection, stream routing rules, and automatic connection management between applications and hardware endpoints.
SPA (Simple Plugin API) plugins provide hardware abstraction. The ALSA plugin specifically interfaces with the kernel's ALSA subsystem to access physical audio devices.
Kernel drivers communicate with the actual hardware layer (audio codecs, sound cards, I2S buses, HDMI audio interfaces) to produce physical audio output or capture input.