The Big Picture: Many Apps, One Speaker
You may have a music player, a video call, a browser tab and Windows notification sounds all making noise at once. But there is only one set of speakers. Somebody has to mix all those sounds into one stream. In old systems each app fought for the hardware. In modern Windows, a central audio engine does the mixing, and every app just hands over its own stream.
Music player ──┐
Browser tab ───┤
Video call ────┼──► AUDIO ENGINE ──► driver ──► hardware ──► speakers
System sounds ─┘ (mixes, volume, effects)
3.1 The Windows Audio Service (Audiosrv)
What it is: A Windows service (a background program with no window, see Chapter 12 — Windows Services) that manages audio for the whole PC. Its service name is Audiosrv and its display name is Windows Audio. If it stops, you usually see a red cross on the speaker icon and "No audio output device is installed" or simply silence.
Two services work as a pair:
| Service | Name | Plain job |
|---|---|---|
| Windows Audio | Audiosrv | Runs the audio engine for the system and manages audio streams |
| Windows Audio Endpoint Builder | AudioEndpointBuilder | Builds and manages the list of audio endpoints (Speakers, Headphones, Microphone...) from what the drivers report. Windows Audio depends on it |
The engine process: audiodg.exe. The actual mixing runs in a process called audiodg.exe (its full name is Windows Audio Device Graph Isolation). Look for it in Task Manager's Details tab. Its job:
- Mixes the streams of all apps into one.
- Applies per-app and master volume.
- Applies effects called APOs (Audio Processing Objects). Examples: loudness equalisation, bass boost, spatial sound.
- Does sample-rate conversion, so a 44.1 kHz song and a 48 kHz video can both play on a device set to one format (Section 5).
Why a separate process? The engine loads effect plug-ins (APOs) that may come from outside vendors. If one crashes, only audiodg.exe stops, not the whole system. That is what the word "Isolation" in its name means. Windows restarts it for you.
You can check the services and the process from PowerShell (these only read information):
Get-Service Audiosrv, AudioEndpointBuilder
Get-Process audiodgExpect Status: Running for both services. audiodg may only show up while audio is active or available; on some versions it is always there.
3.2 The Audio Session API (WASAPI)
What it is: WASAPI (Windows Audio Session API) is the main doorway programs use to send sound to, or record sound from, the audio engine. A program opens a stream on an endpoint, then gives WASAPI buffers full of samples. Each program's stream is part of a session. Sessions are what you see in the Volume mixer: one slider per app.
Other APIs lead to the same place. Older and higher-level interfaces still exist, because old programs use them:
| API | What it is | Who uses it |
|---|---|---|
| WASAPI | The core modern interface | Most current apps, directly or indirectly |
MME (waveOut) | The oldest, simplest Windows audio API | Very old programs |
| DirectSound | A DirectX audio API from the 1990s | Older games |
| XAudio2 | Modern DirectX audio for games | Current games |
| Media Foundation | Windows' media framework: decodes files, then plays through WASAPI | Media players, browsers |
On modern Windows these older and higher-level paths end up in WASAPI (for the shared mode below). See Chapter 23 — Windows APIs for the idea of APIs sitting on top of other APIs.
3.3 Shared Mode and Exclusive Mode
What it is: A program using WASAPI can choose how it uses a device.
| Shared mode | Exclusive mode | |
|---|---|---|
| Who talks to the hardware buffer? | The audio engine | The app directly |
| Mixing | Engine mixes all apps | None. Only this app plays |
| Format | One format set in Sound settings; the engine converts everything to it | The app sets the device format itself (if the device supports it) |
| Effects (APOs) | Applied | Usually bypassed |
| Delay (latency) | A little higher | Lower |
| Other apps | Keep playing | Are silenced or blocked on that device |
| Typical use | Everything normal | Music production, some audio players |
In exclusive mode the app can send its samples to the driver without extra processing. That is good for tiny delay or exact "bit-perfect" playback, but it blocks other sounds. A video call app might stop working if another app holds the device exclusively. In the Sound control panel, each device's Advanced tab has options "Allow applications to take exclusive control of this device" and a priority check box.
ASIO (Audio Stream Input/Output) is a third-party low-latency driver model from a music-software company. Studio programs often use it, and it bypasses the Windows engine.
3.4 Volume: Master, Per-App and Device
Volume exists at three levels:
- Per-app volume (the app's own slider in the Volume mixer).
- Device volume (the master slider for an endpoint, the speaker icon in the taskbar).
- Hardware volume: the knob on your speakers or headset.
They multiply. If an app is at 50% and the device is at 50%, you hear about a quarter of the full level. If everything is quiet, check all three.
See the Volume mixer. Right-click the speaker icon in the taskbar and choose Open Volume mixer (Windows 11 shows it under Settings → System → Sound → Volume mixer). Start a song and a video and watch each app appear with its own slider.
Summary
| Term | Plain meaning |
|---|---|
| Audiosrv (Windows Audio) | Service that runs the audio system |
| AudioEndpointBuilder | Service that builds the list of audio endpoints |
| audiodg.exe | Process that mixes streams, applies effects, converts sample rates |
| APO | Audio Processing Object: an effect plug-in (loudness, spatial sound) |
| WASAPI | Windows Audio Session API: main doorway for sound |
| MME, DirectSound, XAudio2, Media Foundation | Other audio APIs that end up in WASAPI |
| Shared mode | Engine mixes all apps in one agreed format |
| Exclusive mode | One app owns the device buffer: low delay, no mixing |
| ASIO | Third-party low-latency driver model used by music software |
| Session | One app's audio stream (one slider in Volume mixer) |