OAAT — the open-source protocol that democratises bit-perfect multi-room audio
The problem: high-fidelity audio is locked down
For 20 years, high-fidelity network audio streaming has been held captive by proprietary protocols. RAAT (Roon) delivers impeccable quality — but at what cost? Paid certification, closed code, captive ecosystem. DLNA is open but technically limited: no multi-room synchronisation, hit-or-miss gapless, high latency.
OAAT (Open Advanced Audio Transport) resolves this dilemma. It's a network audio transport protocol I designed and implemented in Rust. Fully open-source under the Apache 2.0 licence, it combines the best of both worlds.
What OAAT brings
- Bit-perfect audio — PCM up to 768 kHz / 32 bits, native DSD up to DSD512. Zero resampling, zero compromise.
- Sub-millisecond multi-room — PTP synchronisation between endpoints, less than 1 ms of drift. Comparable to RAAT, without the licence.
- Smart negotiation — the protocol automatically adapts the format to the DAC's capabilities. No manual configuration.
- Zero barriers — no certification, no licence, no DRM. A manufacturer can implement a compliant endpoint in ~1,500 lines of Rust.
A 3-channel architecture
Unlike DLNA (HTTP pull, XML/SOAP), OAAT separates concerns:
- Control (TCP port 9740) — lightweight JSON messages: handshake, format negotiation, play/pause, metadata
- Audio (UDP port 9741) — binary packets with presentation timestamps, server-push, zero head-of-line blocking
- Clock (UDP port 9742) — PTP exchanges for multi-room synchronisation
Discovery is automatic via mDNS/DNS-SD. Plug an endpoint into the network and it shows up. That's it.
graph LR
A["Tune Server"] -->|"TCP :9740 — JSON control"| B["OAAT Endpoint"]
A -->|"UDP :9741 — PCM/FLAC audio"| B
A <-->|"UDP :9742 — PTP clock sync"| B
B -->|"I2S / USB"| C["DAC"]
style A fill:#4a90d9,stroke:#333,color:#fff
style B fill:#50c878,stroke:#333,color:#fff
style C fill:#f5a623,stroke:#333,color:#fff
Protocol comparison
- OAAT: open source (Apache 2.0), bit-perfect, native DSD, multi-room sync < 1 ms, ~1,500 lines for an endpoint
- RAAT (Roon): bit-perfect, DSD, multi-room — but proprietary, paid certification, closed code
- DLNA/UPnP: open — but no multi-room sync, unreliable gapless, DSD via DoP only
- AirPlay 2: Apple multi-room — but limited to 48 kHz/24 bits, no DSD, closed ecosystem
- Chromecast: Google only, lossy resampling, 48 kHz max
From protocol to product: a €100 Raspberry Pi
To prove that OAAT isn't just a theoretical specification, I turned a Raspberry Pi 4 with an Audiophonics ESS 9038Q2M DAC into a high-end audio endpoint:
- Hardware volume via the DAC's I2C registers
- 7 configurable FIR filters (minimum phase, linear phase, apodizing...)
- 7-inch touchscreen running the Tune interface in kiosk mode
- systemd service, automatic startup, seamless reconnection
Total cost: ~€100. A certified Roon Ready endpoint starts at €500.
👉 The full installation guide is available here: Turning a Raspberry Pi into an OAAT audio endpoint.
For manufacturers and developers
The HAL (Hardware Abstraction Layer) trait boils down to 5 methods. The automated conformance tool validates your implementation with 20 tests.
trait OaatHal {
fn configure_output(&mut self, format: AudioFormat) -> Result<()>;
fn write_frames(&mut self, data: &[u8], frames: usize) -> Result<usize>;
fn buffer_level(&self) -> usize;
fn set_volume(&mut self, level: u8) -> Result<()>;
fn actual_sample_rate(&self) -> Option<f64>;
}
Embed the oaat-controller crate in your music server to gain bit-perfect multi-room. C bindings (FFI) available for native integration.
The numbers
- 9 Rust crates, ~8,000 lines of code
- 20 automated conformance tests
- Less than 1 ms of multi-room sync drift (measured)
- ~50 MB of RAM in operation
- Supports PCM 768/32, DSD512, compressed FLAC
- Apache 2.0 licence
Integration into Tune
OAAT is already integrated into Tune, the source-available (BSL 1.1) music server developed by MozAIk Labs. OAAT endpoints are discovered automatically and appear as playback zones — just like DLNA, AirPlay or Chromecast, but with superior audio quality.