Bit-perfect engine
A single AVAudioEngine pipeline minimizes processing. What goes in is what comes out — transparent, lossless, no silent re-encoding.
Bit-Perfect Audio.
From bit to beat.
A SwiftUI iOS hi-fi audio player focused on transparent, lossless playback. 19 formats — from FLAC and DSD to VGM chiptunes — with real-time visualization and remote control for Plex, LMS, podcasts and radio.
From Bit to Beat
BitaBit Sessions · Hi-Fi EP
Built native on SwiftUI and AVFoundation. A single, transparent audio pipeline — no black boxes, no silent transcoding, no compromise.
A single AVAudioEngine pipeline minimizes processing. What goes in is what comes out — transparent, lossless, no silent re-encoding.
FLAC, MP3, ALAC, WAV, AIFF, DSD (DSF/DFF), Ogg Vorbis, Opus, APE, TTA, WavPack and VGM/VGZ chiptunes — all native, all gapless-ready.
Bars, waveform, spectrum, circular, particles, layered, dots and mirror — rendered in real time from FFT analysis on the Accelerate framework.
Every quality limitation is explained twice: once for the engineer (sample rates, bit depth, codec) and once for the curious (plain language, no jargon).
Stream from Plex, remote-control Lyrion Music Server hardware, subscribe to podcasts, and tune into internet radio — all from one player.
VGM/VGZ chiptunes synthesized live via a vendored libvgm driving 40+ retro sound chips. Lock-free render callbacks, zero allocations.
Security-scoped bookmarks keep your Document Picker files accessible across launches. Drag-to-reorder, shuffle, repeat — your queue survives.
Glassmorphic UI that borrows its palette from the playing artwork. Dark mode only, by design — built for the music, not the sun.
Native AVFoundation decoding for the common formats, SFBAudioEngine for the rare ones, and a real-time synthesizer for chiptunes. One registry, feature-flagged and extensible.
19
audio formats
8
live visualizers
40+
retro chips synthesized
384 kHz
USB DAC passthrough
Real-time FFT analysis on Apple's Accelerate framework — 64 logarithmic bands via vDSP_DFT, rendered live on every beat. Pick your aesthetic.
Bars
Classic equalizer columns
Waveform
Smooth scrolling oscilloscope
Spectrum
64 logarithmic FFT bands
Circular
Radial frequency sweep
Particles
Reactive dust cloud
Layered
Depth-stacked bars
Dots
Point-grid intensity
Mirror
Symmetric reflection
Plus an interactive waveform scrubber with offline RMS analysis for precise seeking.
Local files are just the start. Stream from your servers, remote-control your hi-fi hardware, subscribe to shows and tune into the world.
PIN-authenticated streaming from your Plex Media Server with token-secured URLs.
Browse your library and drive Squeezebox hardware over JSON-RPC. The server plays; you conduct.
RSS/Atom subscriptions with SwiftData persistence, background refresh and WiFi-only downloads.
Browse the RadioBrowser directory, save favorites and stream any HTTP(S) audio URL.
BitaBit demystifies hi-fi. Every quality limitation is explained twice — once for the engineer, once for the curious. No jargon tax.
Audio quality analysis
Live route + source comparison
No magic, just careful audio engineering. Every decision documented in Architecture Decision Records.
DSF/DFF decoded via ExtAudioFile into Float32. DoP markers preserved for DSD64/128/256 carrier rates on compatible USB DACs.
Vendored C++ engine driving 40+ retro sound chips — YM2612, SN76489, SPC700, and more. Lock-free render callbacks, zero allocations.
vDSP_DFT into 64 logarithmic bands. Hann window, precomputed buffers. Processed on a dedicated serial queue — never the render thread.
AVAudioEngine for local + VGM. AVPlayer for Plex and radio. Only one active at a time — clean handoff, no mixer conflicts.
Signal path
VGM and synthesis paths route through an AVAudioSourceNode with a pre-allocated scratch buffer — never allocating on the real-time thread.
iOS routes all audio through a system mixer, so true bit-perfect output isn't possible system-wide. BitaBit keeps the AVAudioEngine chain as short as possible and avoids unnecessary format conversions, so what reaches the output is as transparent as iOS allows. With a USB DAC, high sample rates up to 384 kHz pass through untouched.
BitaBit is free of the loudness war, the codec war and the jargon war. Just your music, bit for bit.
iOS 17+ · com.overpal.bitabit