Repository navigation
Omniphony v0.5.2
Highlights
Omniphony 0.5.2 adds an opt-in, quality-first crossover engine for film playback, with its latency compensated across the whole stack.
- Linear-phase FIR crossover (
crossover_type: fir, default stayslr4). Bands are linear-phase FIRs sharing one constant group delay, so the recombined output is a pure delay of the input — flat in magnitude and phase, where the LR4 engine is magnitude-flat only. Kaiser design, ~100 dB band separation, FFT convolution with negligible CPU cost. - Latency compensated end to end. The engine reports its constant DSP latency (liborender ABI 0.7); mpv shifts output timestamps so lip sync holds at any setting (ships in mpv-v0.5.2), and the standalone PipeWire sink advertises the full pipeline latency so desktop players and browsers re-time A/V like they do for Bluetooth sinks.
- Live tuning in Studio: crossover engine select and FIR transition-width control (the registry's first numeric option), annotated live with the bank actually built — bands, taps, latency, lowest cutoff.
- Honest cost metrics: the renderer perf figures are now burst-aware duty-cycle averages (raw per-frame timings aliased badly with 40-sample TrueHD access units) and every value also shows its percentage of the frame budget, comparable across hosts and frame sizes.
Behaviour changes
- The standalone PipeWire sink now advertises its real latency (it previously claimed zero) — players compensate by delaying video accordingly. This is the correct behaviour; interactive/low-latency use should keep the default
lr4engine, which adds no DSP latency.
Known limitations
- Switching the crossover engine or its transition width mid-playback rebuilds the filter bank with a brief audible discontinuity (no crossfade yet).
- The speaker test produces no sound in binaural (headphone) output mode: it exercises the speaker path, which is not rendered there.
The decoder bridge is distributed separately.
macOS install note
The macOS build (Omniphony.Studio_aarch64.app.tar.gz / .dmg) is ad-hoc signed and not notarized yet, so Gatekeeper will refuse to open the downloaded app ("can't be opened" / "damaged"). After extracting, clear the download quarantine once:
xattr -rd com.apple.quarantine "/path/to/Omniphony Studio.app"
Alternatively: try to open it once, then System Settings → Privacy & Security → "Open Anyway" (if offered). See #201.