BitMuse
Download — free for 30 days

Integer mode on macOS: what it is and when you get it

They are not the same thing, and the confusion costs people real setup time. Exclusive mode decides who is allowed to talk to your DAC. Integer mode decides what the samples look like on the way there. You want both, they are separate toggles, and each can be on while the other has quietly failed. This page is about the second one; exclusive mode has its own guide and this one does not repeat it.

The one-line version

Exclusive (hog) modeInteger mode
Question it answersWho owns the device?What shape are the samples?
What it changesDevice ownershipStream format
Removes the macOS mixerYesNo
Removes a float conversionNoYes
Affects DSP and volumeNoYes — both are bypassed
Needs the other oneNoYes — requires hog

What integer mode actually does

By default Core Audio hands your DAC 32-bit floating-point samples. Your file is not floating point — a FLAC rip is 16- or 24-bit signed integers — and your DAC does not want floating point either; it converts back. So the audio makes a round trip into a format neither end asked for. Integer mode removes that round trip.

BitMuse does it in two places at once, and the second is the one that matters:

Only the second one is a claim about the wire. An app can put integer samples into Core Audio and still have the HAL convert them; setting the device’s physical format is what makes the DAC receive integers. BitMuse distinguishes the two in its own signal path, which reads Bit-perfect (hardware integer) when the physical format was verified and plain Bit-perfect when it was not.

Why exclusive mode has to come first

macOS will not let an application change a device’s physical stream format unless it has exclusive access to that device. So integer output is not an alternative to exclusive mode — it is built on top of it. BitMuse’s internal test for a genuine integer path requires exclusive mode to be requested, hog to actually be held, and integer output to be active, all at once.

That distinction — requested versus held — is the practical one. Hog can be lost silently when a device is switched or a USB DAC re-enumerates, and a player that reports what you asked for rather than what it got will happily show you a green light over a mixed path. BitMuse re-asserts hog on every stream start for that reason.

Mechanically, hog mode is almost nothing: the app writes its own process ID into the device’s hog-mode property, and writes −1 back to release it. One property. It changes who may open the device and nothing else about the audio. Integer mode is the one that rewrites the samples.

The difference you can hear about: DSP

Here is the behaviour that genuinely separates the two switches, and it is not obvious from the names. Exclusive mode has no effect on processing. Hog the device and your EQ still runs, your volume slider still scales samples, your room correction is still in the path. Exclusive mode only removed the system mixer.

Integer mode bypasses processing entirely. When integer output is active BitMuse skips the whole DSP chain and software volume in the render callback, and says so on screen — the status bar reads DSP bypassed in Integer Mode and the DSP window is labelled the same way. Switching integer mode on also takes volume out of software mode.

This is a design position rather than a limitation. The alternative — running an equalizer and then converting back to integers — would mean the samples had been through floating point anyway, which is the exact thing integer mode exists to avoid. So the chain steps out of the path instead. It also makes an honest A/B: one toggle switches between a corrected path and an untouched one.

When integer mode does not happen

Integer output is best-effort, because DACs differ in what they advertise. BitMuse falls back to floating point and keeps playing in four separate cases:

  1. The device offers no signed-integer format deep enough at the target rate.
  2. The device rejects the format change.
  3. The format is accepted but reading it back does not match — so BitMuse restores the previous format rather than trusting the write.
  4. The audio unit refuses the integer client format, in which case the engine rebuilds itself around Float32.

None of these is a disaster: the code treats Float32 as value-preserving for material of 24 bits and under, so nothing is lost — but it is a conversion, and the app reports it as one instead of leaving the badge lit. Toggling integer mode restarts the stream, because the format is negotiated when the stream starts and not after.

Where you will not get it

Integer mode is unavailable when you are playing to several DACs at once. An aggregate device cannot be hogged the way a single device can, so BitMuse switches exclusive mode, integer mode and hardware volume off when multi-output is engaged, and greys the toggles out rather than leaving them on and inert.

Native DSD is the other special case: on the DoP path the samples are the DSD bitstream itself, integer output is required for it to survive, and DSP is bypassed for the same reason as above. That is covered in DoP vs native DSD.

How to check, rather than assume

Both toggles live in BitMuse’s audio settings — Exclusive Mode (Hog Mode) and Integer Mode — and both appear in the status bar. The thing worth reading is the signal path, because it reports the engine’s actual state rather than your settings: the two diverge exactly when it matters, which is when the DAC refused something. BitMuse only calls a path bit-perfect when integer output is live, hog is held, volume is at unity, nothing is being resampled and the device rate has been read back and verified. For the wider picture, see how to get bit-perfect audio on a Mac.

FAQ

What is the difference between integer mode and exclusive mode?

Exclusive mode decides who owns the device; integer mode decides the format of the samples. Exclusive mode is a prerequisite for integer mode, because macOS will not let an app change a device’s physical format without exclusive access.

Is hog mode the same as integer mode?

No. Hog mode writes the app’s process ID to one CoreAudio property and takes ownership of the device. It does not change the audio format at all.

Does integer mode disable EQ and DSP?

In BitMuse, yes, deliberately — the whole chain and software volume are skipped, and the status bar says so.

What happens if my DAC does not support integer output?

BitMuse falls back to floating point and keeps playing, and reports the path honestly instead of claiming a hardware integer format it did not get.

See your signal path — free for 30 days

30 days, every feature, no account and no card.
$99.95 once if you keep it · macOS 15+ · Apple Silicon