Supported formats

Bòcan detects audio formats by magic bytes, not file extensions, so a renamed file plays correctly without any guessing. Decoding uses two back-ends: AVFoundation (Apple's native stack) and FFmpeg (bundled LGPL build, no GPL codecs; the source and build recipe are published).

A file with more than two channels, a 5.1 or 7.1 mix, plays folded to stereo through the same mixer whichever engine decoded it, so the same album sounds the same however it was packaged. Dolby Atmos objects are not rendered: the bed plays as stereo. Loudness analysis takes the same route as playback, so it measures the fold you actually hear, and it covers the formats only FFmpeg can open.

Lossless PCM

FormatExtensionsEngine
WAV / RIFF PCM .wav AVFoundation
AIFF / AIFF-C .aiff .aif AVFoundation, FFmpeg fallback
AU / SND .au .snd FFmpeg
Wave64 .w64 FFmpeg (removes the 4 GB WAV size cap)
RF64 / Broadcast Wave .wav FFmpeg (identified by magic bytes, not extension)

Lossless compressed

FormatExtensionsEngine
FLAC .flac AVFoundation (FFmpeg fallback for unusual streams)
ALAC (Apple Lossless) .m4a .alac .mp4 AVFoundation
Monkey's Audio .ape FFmpeg
WavPack .wv FFmpeg (lossless, hybrid-lossy, and DSD modes)

Lossy

FormatExtensionsEngine
MP3 (MPEG Layer 3) .mp3 AVFoundation
MP2 (MPEG Layer 2) .mp2 FFmpeg
MP1 (MPEG Layer 1) .mp1 FFmpeg
AAC .aac .m4a .m4b .mp4 AVFoundation
OGG Vorbis / Speex / Ogg FLAC .ogg FFmpeg (content type detected automatically)
Opus .opus .ogg FFmpeg
WMA (Windows Media Audio) .wma FFmpeg (ASF container)
Musepack .mpc FFmpeg
AC-3 / Dolby Digital .ac3 FFmpeg
E-AC-3 / Dolby Digital Plus .eac3 .ec3 .m4a .mp4 FFmpeg (raw); AVFoundation (in MP4)
DTS .dts FFmpeg
TTA (True Audio) .tta FFmpeg

DSD

DSD files are decoded to PCM for output to standard DACs. There is no DoP or native DSD output.

FormatExtensionsEngine
DSF (Sony DSD Stream File) .dsf FFmpeg
DFF / DSDIFF (Philips) .dff FFmpeg

Containers

FormatExtensionsEngine
Matroska / MKV / WebM .mkv .mka .webm FFmpeg (audio tracks extracted automatically, whatever the codec inside, TrueHD and other multichannel tracks included)
MP4 / M4A .mp4 .m4a .m4b AVFoundation, falling back to FFmpeg when the system decoder refuses the payload (Opus in MP4, for one)

Output

All formats are decoded internally to 32-bit float PCM and played through the system output device, with a peak limiter at the end of the chain. Gapless playback works for every format, between tracks that share a sample rate and channel count.

What isn't supported