Guide

What is exclusive mode on macOS, and why does bit-perfect playback need it?

Last updated: September 2026  ·  Reading time: about 8 minutes  ·  Applies to: macOS 14 and later

Exclusive mode is the state in which one application owns an audio output device outright. On macOS the mechanism is called hog mode, and it is part of CoreAudio, the operating system's audio layer. While an application holds hog mode on a DAC, no other application can play through that device, the system mixer is out of the path, and the application writes samples straight into the hardware's output buffer.

Bit-perfect playback needs exclusive mode because the system mixer is the stage that changes your samples, and the only way to keep it out of the path is to take the device away from it. Exclusive mode has two halves, and most explanations stop at the first one: hog mode decides who talks to the device, and a non-mixable format decides that nothing is done to the stream on the way. This page covers both, what changes on your Mac while a device is held, which devices can be held at all, when you should not do it, and how to verify that it is really happening.

What macOS does to your audio by default

Every application on a Mac normally hands its audio to the system mixer, the part of CoreAudio that runs as coreaudiod. The mixer has one job: take every stream that is playing at the same time and produce a single stream for the output device. To do that it converts each stream to the device's current nominal sample rate, the one shown in Audio MIDI Setup, converts the samples to 32-bit floating point, applies the system volume, and sums everything together.

For everyday computing this is exactly the right design. It is what lets a notification chime play over a video call while music runs in the background, all at different rates, without any of them fighting for the hardware. For a 24-bit, 96 kHz file it means something else: the DAC receives a resampled, float-converted, volume-scaled version of the recording, and none of the samples stored in the file reach it as they were stored. Even when the rates already match, 44.1 kHz played on a device set to 44.1 kHz, the samples still pass through the floating-point mixing pipeline.

What the conversion actually does, how to tell whether it is happening, and what it costs are the subject of a companion page: Does macOS resample your music?

What hog mode is

Hog mode is a CoreAudio device property, kAudioDevicePropertyHogMode. An application acquires it by writing its own process identifier into that property on the device it wants. From that moment the audio hardware abstraction layer routes the device to that process alone:

Only one process can hold hog mode on a device at a time. If another application already holds it, a well-behaved player does not override it: acquisition fails, the player says so, and playback does not start. Hog mode is released when playback stops, when the queue ends, or when the application quits, and at that point the device returns to the system mixer as if nothing had happened.

The second half: non-mixable formats

Owning the device is not the same as delivering the file untouched. The output stream of every device advertises a list of physical formats it can run in, and each of them is either mixable or non-mixable. A non-mixable format carries the CoreAudio flag kAudioFormatFlagIsNonMixable, and it is a promise from the operating system: when the stream runs in this format, no mixing, no resampling and no float conversion take place, and the bytes the application writes are the bytes the hardware receives.

This is why exclusive mode and bit-perfect are related but not synonyms. A device that offers no non-mixable format cannot be played bit-perfect even under hog mode, because the only formats it knows how to run in are the mixer's. A bit-perfect player therefore does two things after acquiring hog mode: it sets the device's nominal sample rate to the file's rate, and it selects a non-mixable integer format at that rate whose container fits the file, typically 24-bit aligned in a 32-bit word, plain 32-bit, or the packed 16-bit and 24-bit layouts that some compact USB DACs use. The source samples sit inside that container without any arithmetic being applied to them.

What changes while a device is held exclusively

Two consequences surprise people the first time they meet them, and neither is a fault. Both follow from the mixer being out of the path.

All of this ends the moment playback stops and hog mode is released.

Which devices can be taken exclusively

Whether exclusive mode is possible depends on how the device connects and on the formats its driver exposes. VeraVox sorts every output device into one of three classes, and the same logic applies to any player that looks at the physical formats.

ClassDevicesWhat exclusive mode means for them
Exclusive ReadyUSB, Thunderbolt or other wired DACs that expose at least one non-mixable integer PCM format on their output stream (the encoded Dolby/DTS passthrough slots of an HDMI or optical port do not count)Hog mode plus a non-mixable format: bit-perfect delivery at the file's own rate
Shared OutputBuilt-in audio, virtual devices, aggregate devices, AirPlay, and external DACs that expose only mixable PCM formats, including HDMI or optical ports whose only non-mixable entries are Dolby/DTS carriersThe device cannot leave the system mixer; playback is lossless on the player's side, but the mixer may convert the rate
LossyBluetooth headphones and speakersA codec compresses the audio in transport, so exclusive delivery would not change the outcome

Two details matter in practice. Some USB DACs expose their non-mixable formats only when the manufacturer's macOS driver is installed; without it they appear as Shared Output devices, which is not a defect of the player. And a DAC whose non-mixable formats are packed, 16-bit or 24-bit stored without padding, still counts as Exclusive Ready: a player that writes the packed layout directly places the source bits exactly where the DAC expects them.

When you should not use exclusive mode

Exclusive mode is the right default for a dedicated DAC. It is the wrong choice in three situations, and a good player lets you make that choice per device.

How to check that playback is really exclusive and bit-perfect

The claim is worth verifying rather than assuming, and there are three places to look.

The definitive test is a digital loopback: capture the DAC's output and compare it with the source, sample by sample. VeraVox includes this as the Bit-Perfect Test in its Signal Generator, described in the technical documentation.

How VeraVox handles exclusive mode

Everything above happens automatically when you press Play on an Exclusive Ready device: hog mode is acquired, the nominal sample rate is set to the file's rate, a non-mixable integer format is selected, and a dedicated ring buffer feeds the hardware through a real-time callback, the IOProc, with no arithmetic on the samples. When playback stops, the device is returned to the exact state it was in before, both the sample rate and the physical format, so the rest of the system carries on as before.

The choice between Exclusive Mode and Shared Output is asked once per device and remembered, and it can be changed at any time from the Playback Mode section of the device picker. A dedicated DAC can stay exclusive while headphones or display speakers use the shared path. VeraVox never overrides another application's hog mode. And when a file cannot be delivered bit-perfect, because its rate exceeds what the DAC offers or because the device has no non-mixable format at all, the Signal Path says so, reporting the path as Enhanced or High Quality rather than claiming Bit-Perfect.

Related reading