Abstract The AudioEndpoint is a fundamental but often overlooked component within the Microsoft Windows audio architecture. Acting as the logical interface between software applications and physical audio hardware (or virtual audio devices), the AudioEndpoint manages buffer handling, format negotiation, and multi-client access. This paper provides a technical overview of the AudioEndpoint’s place in the Windows Driver Model (WDM) and the Universal Audio Architecture (UAA), explains its operational principles (including the endpoint buffer and the audio engine), and discusses practical implications for troubleshooting and low-latency audio development. 1. Introduction When a user plays music, joins a VoIP call, or runs a digital audio workstation (DAW) on Windows, audio data flows through a series of processing stages. At the heart of this flow lies the AudioEndpoint . In the Windows operating system (Vista and later, including Windows 10/11), the AudioEndpoint is a software abstraction that represents a single point of audio I/O—such as speakers, a microphone, a line-in jack, or even a virtual device created by software like Voicemeeter or OBS.
In shared mode, the audio engine runs a : it requests data from all active apps, mixes, applies APOs (like spatial sound or equalization), and pushes to the AudioEndpoint buffer. In exclusive mode, the application writes directly to the endpoint buffer using IAudioClient::Initialize with AUDCLNT_SHAREMODE_EXCLUSIVE . 5. Virtual AudioEndpoints One of the most powerful aspects of the AudioEndpoint abstraction is the ability to create software-only endpoints . Virtual audio drivers (e.g., VB-Cable, Voicemeeter, NDI Audio) present themselves as real AudioEndpoints to Windows, despite having no physical hardware. These appear in mmsys.cpl (Sound Control Panel) like any other device. audioendpoint
| Feature | Shared Mode | Exclusive Mode | |---------|-------------|----------------| | | Yes | No | | Latency | High (~10-30 ms) | Low (~3-10 ms possible) | | Multiple apps | Yes | Single app owns endpoint | | Sample rate conversion | Automatic | Must match hardware natively | | Used by | Web browsers, system sounds | DAWs, ASIO wrappers, game voice | Abstract The AudioEndpoint is a fundamental but often