Skip to content

Settings Reference

Score2 edited this page Aug 10, 2026 · 1 revision

Settings Reference

The switches that do not belong to audio behaviour: what each one does, and what it leaves behind when you turn it off.

Settings that do belong to audio behaviour live with their subject — Operating Modes, Audio Quality, Latency, Volume, Transport Tiers, Discovery and Pairing, Web Access.


Startup at login

One switch, two mechanisms, because the two operating systems disagree about where a login item lives.

macOS Windows
What is registered a Login Item a scheduled task, AudioHubDaemon
What it launches AudioHub, which then starts the audio service same
Turning it off deletes the item deletes the task

Two properties are worth stating because they are the questions people actually have:

It starts the app, not a headless service. The result is indistinguishable from launching AudioHub by hand, which is what makes the permissions keep working: macOS records microphone and local-network consent against the app's code identity, and that identity is the same either way.

Off leaves nothing behind. No disabled entry, no orphan task. The switch and the system's own list agree.

When the switch says something odd

The switch reports three states, not two, and the third one needs a sentence:

  • On / off — the ordinary pair.
  • Cannot be registered — this build cannot write a login item (running from a development tree, typically). The reason is shown next to it.
  • Still registered, but not by this build — an installed AudioHub.app wrote the login item and it outlives whatever you are running now. This build cannot change where it points, but it can switch it off, which is the only way out of the "something starts at login and I cannot find it" corner.

The row underneath shows the path the login item actually points at. If that is not the AudioHub you think you are running, this is where that becomes visible.


Keyboard shortcuts

Click a key capsule and press the combination you want. Notes:

  • Shortcuts always yield to text fields. Typing a digit into the port box must not switch pages.
  • At least one modifier is required (except F1–F12). A bare letter would fight with anything on the page that accepts typing.
  • The OS wins. ⌘Q, ⌘W, ⌘M and ⌘H are taken by macOS before the page sees them, so they cannot be reassigned. If the recorder seems to ignore your keypress, that is why, and it says so after a moment.
  • Chords are matched by physical key, not by the character produced. ⌥1 on macOS produces "¡"; on a non-US layout almost everything shifts. Binding to the physical key means "the 1 key" stays the 1 key when you change layout.
  • Clearing is not the same as resetting. A cleared shortcut stays cleared across restarts rather than quietly reverting to the default.

They are stored per interface. The storage is the browser's, scoped to the origin, so the desktop window and a tab opened through web access keep independent sets. This is deliberate — shortcuts are a property of the machine you are typing on — but it does mean "I set that already" can be true and invisible at the same time.


Virtual device options

Both apply to mode B only.

Remove virtual devices on disconnect

Off (default). A peer going offline is shown as offline; its two devices stay in the system's device list. They remain selectable and simply process no audio.

On. Disconnect removes them. On reconnect they come back with the same UID, so applications that remembered the device keep their selection.

The default is off because the failure it prevents is worse than the clutter it causes: an application whose selected device disappears silently falls back to the system default, and the first sign of that is a call going out of the wrong speaker.

Unpairing removes the devices unconditionally, regardless of this setting — see unpairing.

Mark device names while offline

Appends "(offline)" to the device name while the peer is away. It is an in-place rename on the same UID, so remembered device selections survive it.

Turning it off keeps names constant, at the price of not being able to tell "this device is silent because the peer is gone" from "this device is silent for some other reason" while looking at the system's sound settings.

The inventory

The settings page lists the devices the driver has actually published, with a count against the ceiling of 16. "Published" is a stronger claim than "created": it means the driver confirmed the binding and both UIDs are findable in the system's device list. When those two disagree, this list is where it shows.


Paths

The configuration directory holds the service identity (the key pair behind your fingerprint), the pairing table, and ipc.json.

Platform Default
macOS ~/Library/Application Support/AudioHub
Windows %APPDATA%\AudioHub

Override with the environment variable AUDIOHUB_CONFIG_DIR. Pointing it at a throwaway directory is how the regression suite runs a second instance without touching your real pairings — and it is the fastest way to get a clean slate without unpairing anything you want to keep.

Deleting this directory discards the identity. Every peer that had you paired will see a different fingerprint afterwards and will refuse the connection until you pair again, which is the pinning working as designed rather than a bug.

Clone this wiki locally