What it is
1-bit bridge is a small Go server you run on a Mac, Windows PC, Linux box, or Raspberry Pi alongside your music library. It serves the iOS app over HTTPS instead of SMB — same files, same bit-exact audio, but a transport designed for the app rather than a decades-old file-sharing protocol.
It's free and open source under the MIT license. The code, binaries, wire protocol, and release notes live on GitHub; everything you need to install, pair, and run it is documented right here.
The setup walkthrough takes you from a blank machine to a paired iPhone in about ten minutes. Hit a snag? The troubleshooting page is symptom-to-fix.
Why use it instead of SMB
- Faster. A pre-indexed library manifest replaces the iOS app's two-phase SMB scan. The first sync finishes in seconds, not minutes.
- Reachable remotely. SMB is a LAN protocol. The bridge speaks HTTP/2 over TLS — Tailscale, WireGuard, or any direct route works without extra plumbing.
- Easier to set up. Run the installer, approve the device on the admin console, you're paired. No share permissions, no Samba quirks.
- Same audio path. The bridge ships bytes; the iOS app still owns DSD, DoP, gapless, and everything else. No server-side transcoding, ever.
What's new in 0.1.8
Since 0.1.7. The iOS wire protocol stays at v1 — everything below is additive, so older app builds keep working unchanged, no re-pairing and no app update are required, and the bit-exact audio path is untouched:
- PDF album booklets (opt-in). When a release has a digital booklet — the sleeve essays, personnel, and lyrics that shipped with the record — the bridge caches it and serves it alongside the artwork you already see. It rides the optional Atlas metadata path, so it's off unless you've turned Atlas harvest on.
- A rebuilt admin console. A ground-up, modern-minimal redesign with a light / dark / system theme toggle and a mobile-first layout that's finally usable from a phone — usually where you are when you notice something's off with the library. The Library Inspector now carries album and artist artwork, bios, booklet chips, and per-folder coverage bars measured against what's actually eligible rather than raw track counts; a new Enrichment tab exposes the metadata source and a per-folder "retry missing"; and the dashboard breaks your library down into filesystem roots vs. UPnP upstreams.
- Docker in one command. The container image now bundles the
sox/ffmpegaudio toolchain and self-initialises on first boot, so a singledocker run(ordocker compose up) gets you a running, scanning bridge — no separate init step, no config file to write. See the new Docker guide. - The largest hardening pass yet. A full-codebase audit plus several external
review rounds landed 83 fixes — security (a UPnP-proxy SSRF, bounds on
unauthenticated requests, public-mode rate limiting), safer self-updates (validated download
URLs, a crash-safe binary swap), and steadier scanning. Two you may feel directly:
macOS-composed (NFD) folder names with accents now resolve instead of showing phantom
misses, and upscaling refuses sources your
soxcan't actually decode rather than failing the job after you've asked for it.
Full release notes and upgrade guidance: github.com/acoseac/1-bit-bridge/releases.
Bit-exact, by design
The bridge never decodes, resamples, or transcodes the source files. It serves the bytes the iOS app asks for — DSF, DFF, FLAC, ALAC, WAV, AIFF, MP3, AAC — and the iOS app does the rest. The full DSD pre-cache that protects DoP marker alignment still applies; the bridge just gets the bytes there faster. Optional upscaled variants are generated alongside the originals, never in place of them.