Connecting an audio interface
A guide to plugging Axion into the world. Covers USB / Thunderbolt setup, sample-rate selection, and the browser permission dance.
Axion uses the standard WebAudio getUserMedia path to talk to your interface. That means there is no driver to install — your operating system already exposes the device — but it also means you need to authorise the page once, the first time you plug something in.
Prerequisites
You'll need an audio interface with a high-impedance instrument input (any modern USB or Thunderbolt interface will do — Scarlett, Apollo, Babyface, Komplete Audio, the cheap-and-cheerful Behringer UMC), a guitar cable, and Chrome, Edge, Firefox, or Safari (16.4 or newer). Wired audio works; Bluetooth doesn't — the codec adds latency you can't compensate for.
NOTE On macOS, your interface should appear underSystem Settings → Sound → Input. On Windows,Settings → System → Sound → Input device. If it's not showing up there, Axion won't see it either — fix the OS-level problem first.
First connection
- Plug your interface in before opening Axion. The browser caches the device list at page load.
- Open axion.cab. The first time, you'll see a permission prompt asking for microphone access — this is how the browser describes audio input. Click Allow.
- In the top-right device chip (next to the CPU readout), click the dropdown and pick your interface from the list.
- Strum. You should see the input meter at the bottom-left light up.
If you don't see meter movement, the most common culprit is that another application has the interface open in exclusive mode. Quit your DAW or any other audio software, refresh the page, and try again.
Choosing a sample rate
Axion runs at whatever rate the OS hands it. You can change it from the device chip dropdown:
# 48 kHz — recommended for most workflows # 44.1 kHz — if you're recording into a 44.1 session # 96 kHz — Pro feature; useful for high-gain captures device.sample_rate = 48000
Higher rates cost CPU proportionally. The audible difference between 48 kHz and 96 kHz on guitar signal is small to non-existent for most material; the exception is heavily-saturated high-gain tones, where the extra headroom helps the anti-aliasing filters do their job.
Reading the latency display
The red RT chip at the top of the app shows your current round-trip in milliseconds. This is the time from when your pick hits the string to when sound exits your speakers. Three numbers contribute:
- Input buffer — set by your OS/driver, usually 64–256 samples.
- DSP block — Axion's internal processing, fixed at 128 samples.
- Output buffer — also OS-side, matches input.
Under 20 ms feels real-time. Under 12 ms is indistinguishable from a wired amp. Above 30 ms you'll feel it — that's the point at which you should look at lowering your interface's buffer size.
Common problems
The browser won't let me pick my interface
Chrome occasionally needs the page to be served over HTTPS to expose the full device list. axion.cab is HTTPS-only, so this never bites you in production.
I hear crackling / clicks
Buffer too small. Raise your interface's buffer size to at least 128 samples (probably 256) in your OS audio settings, then refresh the page. Closing other CPU-hungry apps (Slack, Electron tools, browsers with many tabs) helps too.
My MIDI controller isn't responding
Different page-level permission. See Setting up MIDI bindings. Browser MIDI permission is separate from microphone permission — Axion will prompt for it the first time you open the MIDI panel.