Free and open sourcemacOS 14.4+Apple silicon and Intel

Surround and hi-res music, on your Mac.

The free, open-source Mac player for surround and hi-res music collections. SACD and DVD-Video disc images, DSD, DTS CDs, DTS-HD MA, TrueHD and Atmos files share one library with your stereo albums, with Spatial Audio on AirPods (head-tracked where macOS provides it). Room correction measures your room with a USB microphone and corrects each speaker; it’s off until you turn it on. A signal path shows each step from file to output. In English and 44 other languages.

Like it? Star it on GitHub · Join the discussion

Version 0.15.1 · 28 MB · 4 November 2026 · signed and notarized · Release notes

Or with Homebrew: brew install --cask szeremeta1/tap/vespertine

Channel-for-channel output and receiver bitstream are experimental, untested on real receivers and multichannel USB DACs (one Sony TV over HDMI has been tested: see docs/DEVICES.md); reports wanted. Privacy: nothing collected.

Vespertine’s Now Playing inspector: Liszt’s Les jeux d’eaux à la Villa d’Este by Lazar Berman, marked HI-RES LOSSLESS and BIT-PERFECT, exclusive, 32 / 96, with its signal path from a 24-bit / 96 kHz FLAC through libFLAC at the native rate and unity volume to a Fosi Audio ZD3.
Signal pathFosi Audio ZD3 · 24 / 96

Trailer

See it in 55 seconds.

Turn the sound on. Everything in it is the real app, recorded on the developer’s own library.

55 s · 1080p · album art belongs to its owners

Why Vespertine

A Mac music player built for surround and hi-res.

Surround and stereo music in one library, and a player that shows exactly what it did to the signal.

  • Surround in one library

    SACD images and rips, DVD-Video discs, DTS CDs, DTS-HD MA and TrueHD sit next to your stereo albums and play through Apple’s Spatial Audio renderer on AirPods (head-tracked where macOS provides it). When an album comes in both, each song is listed once and the right version plays for your output.

  • A signal path you can check

    Rates, word lengths, gain and channel processing, read back from Core Audio. The bit-perfect conditions are in the source, with automated tests, a loopback test and a hardware verification guide.

  • Checks hi-res files

    Analysis flags padded bit depth and possible upsampling or lossy origin. Spectral verdicts are estimates, shown with their evidence and limits. The same analysis runs on a Linux server next to your files.

  • Open source you can audit

    Free under the GPL. Read, build and change the player, including its output conditions and tests. No account, subscription, ads or telemetry.

Bit-perfectExclusive32 / 19244.1 → 48 kHzDSD 128 · DoPRoom correctionSpatial · head trackedSynthetic high frequencies?

01 Bit-perfect

Every track at its native rate and depth.

The signal path lists each step from the file to your DAC, read back from Core Audio, and says when something changed the samples.

Vespertine switches the device to each file’s rate and resamples, with Apple’s mastering-quality converter, only when the DAC can’t run it. BIT-PERFECT appears only when the conditions in the source are met: a native rate, nothing changing the samples, a word length that fits, and a device that is exclusive or not shared with another app. PCM playback has been tested up to 768 kHz and DSD256 on a Fosi Audio ZD3, and up to 384 kHz and DSD128 on a FiiO K11 (developer reports; see docs/DEVICES.md).

  • Exclusive (hog) mode keeps other apps off the device. In shared mode the volume keys and the Digital Crown adjust your DAC; in exclusive mode they can too, if you turn that on.
  • Integer mode sends unprocessed 32-bit PCM straight to DACs that take integers.
  • Match 16-bit sources (off by default) sends 16-bit files to DACs with a real 16-bit mode as 16-bit, not zero-padded.
  • Gapless, including CUE-sheet albums split from one file.
  • Remembers your DAC. If it isn’t connected, music plays on the best connected output and moves back when the DAC returns.
  • Outputs without a volume control of their own (HDMI, optical, line-out) can use Vespertine’s volume, chosen per output. Below 100% the labels say it’s no longer bit-perfect.
  • Hands your DAC back at the rate and depth it had before, when Vespertine quits.
  • A built-in loopback test compares every sample Vespertine sends to a virtual device. It’s a software check, labelled as one, and never changes the BIT-PERFECT badge.
Vespertine playing Lazar Berman’s Liszt, Années de pèlerinage, from a 24-bit / 96 kHz FLAC: the inspector marks it bit-perfect and exclusive on a Fosi Audio ZD3, with each step of the signal path.
The loopback test sheet: 24-bit at 44.1 and 96 kHz, 16-bit padded and a gapless pair, each bit-exact.
Loopback test · software check

02 Speaker Groups · Beta

Several DACs. One speaker system.

Play one stream across two or more USB DACs as a single quad or surround setup, with a channel map, per-speaker trims and a drawing of your room.

Vespertine joins your DACs in a private Core Audio aggregate that other apps can’t see. One DAC, the clock leader, sets the time and the others follow it. A song’s channels go to your speakers by where they stand: a channel with a speaker of its own plays there untouched, one between two speakers is panned with equal power, and the LFE is dropped by default. Dolby Digital Plus Atmos files play their 5.1 or 7.1 channel bed.

  • A channel map for every output of every DAC, with a quiet tone to identify one channel at a time, and presets for a quad, ITU 5.1 and two pairs facing.
  • Drag the speakers and your seat on a drawing of the room: distance, angle, delay and level follow from it. Or measure the group with a microphone.
  • Level, delay and polarity trims for each speaker, with a headroom guard.
  • BIT-PERFECT appears only when every channel in use is on a DAC that isn’t resampled (the clock leader); otherwise the signal path says what changed.

Beta: off by default, behind one switch in the app’s settings. It is tested with automated tests and virtual devices; on real DACs only a probe tool has run, and nothing in the app has been listened to on a real group yet. PCM only; Bluetooth and AirPlay outputs can’t join.

Vespertine’s speaker group editor for a quad: a top-down drawing of the room with four speakers around the listening seat, and each speaker’s distance, angle, delay and level.
The channel map: every channel of each output assigned to a speaker, with an Identify button and an Inverted box on each channel.
Channel map

03 Room correction

Measure your room. Correct each speaker.

Measure your room with a UMIK-1 or another calibrated USB microphone, and Vespertine fits filters to each speaker from what it hears at your seat.

Sweeps play through one speaker at a time, at one to five spots around your listening seat. Each speaker gets its own filters, designed from the measurement. They are mostly cuts: they take down the room’s peaks and boost broad dips only gently. The same measurement sets each speaker’s delay and level, so every speaker reaches your seat at the same time and the same loudness. Room correction is off by default, and playback stays bit-perfect while it’s off. When it’s on, the signal path says ROOM CORRECTION.

  • Three targets: Warm (the default), Gentle tilt and Flat. Correct the bass only or the full range, and redesign the filters later without measuring again.
  • Imports filters from REW or Equalizer APO, with each speaker’s delay and level, and exports Equalizer APO text.
  • Imports impulse responses (WAV, AIFF, CAF or FLAC) and plays them by convolution.
  • Stereo and 5.1 (5.1 is tested with simulated rooms and imported profiles, not yet in a real 5.1 room).
  • The Room Portrait shows the speakers, your seat and each microphone spot as it’s measured. The Curve Reveal then turns the measured response into the predicted one, and a before/after switch compares them.

The “after” curve is predicted from the measurement and the filters, not measured. To see what the room really does, measure again with correction on.

Vespertine’s predicted room correction for a stereo pair with the Warm target: for each speaker, the measured response, the target and the predicted response after correction, with a room peak near 120 Hz cut by 14 and 18 dB, and each speaker’s filters.
The Room Portrait in the measurement wizard: left and right speakers, the seat, and five microphone spots around it, the first with the microphone on it.
Room Portrait

04 Surround & Spatial Audio

Your 5.1 discs, in the same library.

Multichannel music plays through Apple’s Spatial Audio renderer on AirPods (head-tracked where macOS provides it), or folds down by channel layout on a stereo DAC.

DTS CDs decode to 5.1. SACD images, extracted SACD tracks, multichannel FLAC, TrueHD and DTS-HD MA render through Apple’s Spatial Audio renderer on AirPods (head-tracked where macOS provides it) or fold down on a stereo DAC. Dolby Digital Plus with Atmos uses macOS’s object renderer; TrueHD Atmos and DTS:X play their channel bed. Channel-for-channel output is experimental, untested on real receivers and multichannel USB DACs (one Sony TV over HDMI has been tested: see docs/DEVICES.md); reports wanted.

  • Stereo and surround versions of an album are listed once; Vespertine plays whichever suits the output, or the one you pin.
  • Dolby Digital, DD+ and DTS-CD receiver bitstream is experimental, untested on real receivers and multichannel USB DACs (one Sony TV over HDMI has been tested: see docs/DEVICES.md); reports wanted. Carrier tests use FFmpeg’s S/PDIF reader. TrueHD and DTS-HD MA passthrough is unsupported on macOS.
  • Export for Spatial Audio as binaural stereo for headphones or multichannel ALAC for Apple devices, with tags and artwork.
Elton John’s Goodbye Yellow Brick Road, a 24-bit / 88.2 kHz 5.1 album, playing as head-tracked Spatial Audio on AirPods Max, with the signal path and a meter for each channel.
An album with stereo and 5.1 versions of each song, listed once.
Stereo and 5.1, listed once

05 SACD, DVD-Video & DSD

Play the disc image itself.

Point Vespertine at an SACD or DVD-Video image and it plays the music straight from it, with nothing mounted, extracted or written.

SACD .iso images play their stereo and 5.1 areas, DST-compressed or plain, titled from the disc’s own text. DST is decoded back to the exact DSD, so stereo goes to your DAC as native DSD over DoP where the DAC supports it, and 5.1 plays through Apple’s Spatial Audio renderer on AirPods. The LPCM music on DVD-Video discs (an .iso or a VIDEO_TS folder) plays bit for bit, one album per title and a track per chapter.

  • SACD images are tested with synthesized discs, including ones with a 5.0 area, only a multichannel area, or DSD128 and above.
  • DSF and DSDIFF from DSD64 to DSD512, DST-compressed DSDIFF included, go out as DoP to DACs that take the carrier rate (up to DSD256 on the DACs tried), or convert to high-rate PCM. DoP is reported to work up to DSD256 on a Fosi Audio ZD3 and up to DSD128 on a FiiO K11 (developer reports, no capture); DSD512 over DoP is untested on hardware.
  • DVD-Video LPCM at 16, 20 and 24 bits, 48 and 96 kHz, up to 8 channels. DVD-Audio isn’t supported, and encrypted (CSS) discs need a decrypted copy.
Brothers In Arms by Dire Straits playing straight from its SACD disc image: stereo DSD64 over DoP to a FiiO K11, with the NATIVE DSD · DoP badge and the decoder reading SACD image, DST (lossless).
Claudja Barry’s Love for the Sake of Love as DSD128 over DoP to a Fosi Audio ZD3, at 352.8 kHz.
DSD128 · DoP · 352.8 kHz

06 Fake hi-res detection & spectrum

Find out which “hi-res” files aren’t.

Every file can be analyzed for its real bit depth, its real bandwidth and the fingerprints of lossy encoders and resamplers.

Verdicts come with their evidence and name what else could explain it, and a Suspect Hi-Res playlist collects them. Only zero padding is exact: the spectral verdicts are flagged as questions, because some high-bitrate lossy files pass as genuine and steep mastering filters, FM sources and tape or vinyl transfers can look suspicious. While music plays, meters and a live spectrum show what’s going out, DoP included.

  • 16-bit audio padded into 24-bit containers
  • Likely upsampled CD-quality masters sold as 96 or 192 kHz
  • Likely lossy origin: MP3 or AAC transcoded to FLAC
  • Likely synthetic high frequencies from SBR or “AI enhancement”
  • vespertine-analyze runs the same analysis on a Linux server next to your files; the app imports the results.

The file in this screenshot is a deliberate fake: the trailer’s own music, encoded to MP3 and upsampled to 24/192 under a made-up band name.

The Analysis tab flagging a 24/192 “remaster” as a likely lossy origin: its long-term spectrum stops at 16 kHz.

07 AirPods Max over USB-C

Lossless on AirPods Max, and it says so.

Connected with the USB-C cable, AirPods Max are recognized as a 24-bit / 48 kHz lossless device.

48 kHz music plays bit-perfect and everything else is converted with Apple’s mastering-quality resampler, in plain view. Over Bluetooth, Vespertine tells you the link is AAC. This rests on Apple’s description of the cable path and Core Audio’s readback, since AirPods have no digital output to loop back.

A smart playlist of 24-bit / 48 kHz tracks, narrowed to Oasis, playing bit-perfect on AirPods Max over USB-C.

08 Library

Browse like Apple Music. Manage like a librarian.

Albums, artists, songs and genres, each with filters you can combine, and Shuffle for any of them.

  • Filters for format, 24-bit, 88.2 kHz and up, multichannel, genre, year, sample rate, channels and analysis verdict. Search ignores case and accents.
  • Smart playlists in the units you think in: 24-bit, 88.2 kHz.
  • Remasters, mono and stereo releases and SACDs of one album share a card; choose the edition when you open it.
  • Favorites and play counts, kept in the library and never written to your files. Imports M3U and Apple Music playlists, play counts and favorites.
  • Tag editor with backups and one-step revert, plus MusicBrainz enrichment that shows its confidence before writing anything.
  • Network shares over SMB, NFS or WebDAV, with caching, Keep Offline and playback built for slow servers: tracks are buffered on your Mac before they play, with a loading ring on the play button while they do.
  • Find Music searches every drive for your real music and leaves the clutter behind. A short setup on first launch picks your output and explains what exclusive access and ReplayGain do.
  • Parametric EQ per output that imports AutoEQ and Equalizer APO presets. Off by default; when it’s on, the signal path says EQUALIZER instead of BIT-PERFECT.
  • Mini player, menu-bar extra, media keys, ReplayGain and automatic, signed updates.
The Genres page: a tile per genre with a mosaic of its covers.

09 44 languages

Speaks your language.

Every menu, setting and signal-path message is translated into 44 languages besides English.

From Ukrainian, German and Japanese to Swahili, Tamil and Hausa, with local plurals and number formats, and Simplified, Traditional and Hong Kong Chinese each with their own vocabulary. Arabic, Hebrew, Persian and Urdu get a right-to-left layout.

How the translations are checked: an automatic check on every change confirms every string in the app exists in all 44 languages with the same placeholders and the plural forms each language needs, and the main screens were checked in several languages for clipped or overlapping text and right-to-left mirroring. They began as careful machine translations, so corrections from native speakers are very welcome on GitHub.

  • ヴェスパタイン日本語
  • VespertineDeutsch
  • فسبرتاينالعربية
  • ΒέσπερταϊνΕλληνικά
  • Vespertinefrançais
  • वेस्परटाइनहिन्दी
  • 베스퍼타인한국어
  • VespertineKiswahili
  • Веспертайнукраїнська
  • Vespertine简体中文
  • เวสเปอร์ไทน์ไทย
  • וספרטייןעברית
  • Vespertineespañol
  • வெஸ்பர்டைன்தமிழ்
  • Vespertineportuguês (Brasil)
  • ቬስፐርታይንአማርኛ
  • Vespertineitaliano
  • ভেস্পারটাইনবাংলা
  • وسپرتاینفارسی
  • Vespertinepolski
  • వెస్పర్టైన్తెలుగు
  • Vespertine繁體中文
  • വെസ്പർടൈൻമലയാളം
  • VespertineTürkçe
  • ویسپرٹائناردو
  • VespertineNederlands
  • ವೆಸ್ಪರ್ಟೈನ್ಕನ್ನಡ
  • VespertineTiếng Việt
  • વેસ્પરટાઇનગુજરાતી
  • Vespertinečeština
  • ਵੇਸਪਰਟਾਈਨਪੰਜਾਬੀ
  • VespertineIndonesia
  • वेस्परटाइनमराठी
  • Vespertine繁體中文(香港)
  • Vespertinesvenska
  • Vespertinemagyar
  • Vespertineromână
  • Vespertinesuomi
  • VespertineHausa
  • Vespertinedansk
  • VespertineFilipino
  • VespertineMelayu
  • Vespertinenorsk bokmål
  • Vespertineportuguês europeu
  • VespertineEnglish

Formats

Surround, lossless and lossy files.

Stereo and multichannel, PCM and DSD, disc images and plain files, with CUE sheets throughout.

Formats Vespertine plays, and how
FLAC, ALAC, WAV, AIFFNative rate and depth up to 32-bit and the rate your DAC runs (tested to 768 kHz); unchanged 32-bit PCM needs integer mode. CUE-sheet images..flac .m4a .wav .aiff .cue
DSD64 – DSD512DSF and DSDIFF, DST-compressed or plain. DoP depends on the DAC and carrier rate, otherwise PCM. DoP is tested to DSD256; DSD512 over DoP is untested on hardware..dsf .dff
SACD imagesStereo and multichannel areas, DST or plain, straight from the image; each song listed once with its stereo and 5.1 versions..iso
DVD-Video LPCM16, 20 and 24-bit at 48 and 96 kHz, 1 to 8 channels, bit for bit; one album per title, a track per chapter. DVD-Audio isn’t supported..iso VIDEO_TS
Dolby AtmosDolby Digital Plus with Atmos, rendered by macOS’s object renderer, or its decoded channel bed..ec3 .m4a .mp4
Dolby TrueHD, MLPLossless, can be bit-perfect; TrueHD Atmos plays its channel bed, its objects aren’t rendered..thd .mlp .mka
DTS-HD Master Audio, DTS-HD HR, DTSMA is lossless and can be bit-perfect; DTS:X plays its channel bed. Raw DTS decodes; DTS-CD bitstream is a separate path..dts .dtshd .mka
Dolby Digital (Plus)Decoded by macOS. Receiver bitstream is experimental, untested on real receivers and multichannel USB DACs (one Sony TV over HDMI has been tested: see docs/DEVICES.md); reports wanted..ac3 .ec3
DTS CDs and DTS-WAVRecognized and decoded to 5.1, including CUE-split albums..wav .flac .cue
APE, WavPack, TTALossless. DSD inside WavPack isn’t supported..ape .wv .tta
Opus, Vorbis, Musepack, MP3, AACDecoded and marked lossy..opus .ogg .mpc .mp3 .m4a

Compare

How it stacks up.

Several Mac players offer bit-perfect playback. This compares what each player’s own documentation or source code says. “Not documented” means the vendor doesn’t say either way, not that the feature is missing. Vespertine’s convolution is for room correction; it has no audio effect plugins or streaming services.

Vespertine compared with seven other Mac music players, from each player’s own documentation or source
FeatureVespertineApple Music (Mac)Audirvana Studio / OriginRoonVeraVoxColibriCogfoobar2000 for Mac
Source codeGPL-3.0ClosedClosedClosedClosedClosedGPL-2.0Closed
FLAC / DSD filesYes / YesNo / NoYes / YesYes / YesYes / YesYes / YesYes / YesYes / No⁴
Automatic DAC rate switchingYesNoYesYesYesYesYesNot documented
Exclusive (hog) modeYesNoYesYesYesYesYesYes
16/24-bit PCM without sample changesConditions + testsmacOS 27: third-party tests¹Vendor claimVendor claimIn-app loopback testVendor claimIn-app indicatorNot documented
Local surround filesYes²Not documentedYesYesYesNot documentedYesNot documented
Apple Spatial Audio for local surroundYesCatalog Atmos only³Not documentedNot documentedNot documentedNot documentedYesNot documented
Hi-res file analysisYesNoAudioScanDynamic range, loudnessYesNot documentedNo (live spectrum only)No (live spectrum only)
SACD ISOYesNoYesNo (DSF/DFF only)YesNoNoNo⁴
Room correctionMeasured in the app (USB mic), or REW / APO and impulse-response importNoVia convolution (Origin: paid option) or Audio UnitsVia convolutionNo (by design)Not documentedNoNot documented
Convolution / audio effect pluginsYes (room correction) / NoNo / NoYes (Origin: paid option) / Audio UnitsYes / NoNo / NoNot documented / Not documentedNo / NoNot documented / Audio Units
Streaming servicesNoApple MusicStudio: yes; Origin: noYesNo (local + UPnP)No (internet radio)No (internet radio)No (internet radio)

¹ Apple Music on macOS 27 was bit-exact at 16/24-bit in third-party loopback tests reported on ASR, at 100% volume. This is not a Vespertine measurement; the original report could not be independently rechecked for this update. There is still no automatic rate switching, hog mode, FLAC or DSD on Mac.

² Multichannel DAC output and receiver bitstream are experimental, untested on real receivers and multichannel USB DACs (one Sony TV over HDMI has been tested: see docs/DEVICES.md); reports wanted.

³ Apple documents Spatial Audio with head tracking for Dolby Atmos tracks in the Apple Music catalog, not spatial rendering of your own multichannel files.

⁴ Tested on foobar2000 2.26 (macOS 27.0.1), with no components: DSF, DFF and SACD ISO files fail with “Unsupported file format”. DSF and DFF play only as 352.8 kHz PCM after installing FFmpeg separately and adding them to its FFmpeg Decoder Wrapper; SACD ISO still fails.

Sources and scope. Corrections welcome: open an issue.

What’s new

What’s new in 0.15.1.

Latest release

Vespertine 0.15.1

Vespertine 0.15.1 plays TAK, Matroska/WebM audio and DSD in WavPack, names the formats it can't decode instead of failing on them, reads a DSF whose header is a few bytes off, and fixes Room Correction with a USB microphone such as the UMIK-1.

New formats

  • TAK (.tak) files play and are read into the library.
  • Matroska and WebM audio (.mka, .mkv, .webm) play whatever audio they hold: FLAC, ALAC, AAC (including xHE-AAC), MP3, Vorbis, Opus, WavPack, TTA, Monkey's Audio and PCM. If a file has more than one audio stream, the library lists one track per stream and plays the one you pick.
  • DSD in WavPack (.wv) plays as native DSD over DoP where the output takes it, and as PCM where it doesn't, like other DSD files.
  • Cue sheets inside FLAC files become separate tracks in the library.

Formats Vespertine can't decode are now named

  • Dolby AC-4 (for example the 2024 Atmos Music stereo masters in .mp4) used to show up as a lossless 16-bit 48 kHz "MP4" and fail with "The format … was not recognized." They are now listed as Dolby AC-4, lossy, with their real sample rate and channel count, and playing one says plainly that macOS has no decoder for it and Vespertine doesn't include one. Libraries that already have such files relabel them by themselves; the files are not touched.
  • MPEG-H 3D Audio (also used by Sony 360 Reality Audio) is named the same way.
  • MQA files (FLAC) carry an MQA label and play as the plain FLAC they contain, not unfolded. Auro-3D files are labelled and play as the ordinary surround PCM they contain.
  • This release names Dolby AC-4 and MPEG-H files; it does not play them.

Fixed

  • A DSF whose header total size is larger than the file is read. Some editors rewrite a DSF's tag without fixing the size in the header, and Vespertine then skipped the file as "not a valid DSD Stream file". It is now added to the library with its title, artist, album and DSD format. The file itself is never changed.
  • Room Correction works with a microphone that only records at 48 kHz. "Measure the room" failed at the level check with "UMIK-1's input can't be set to Float32 at the test's rate" when the output ran at a higher rate (for example 176.4 kHz). The measurement now records at a rate the microphone offers, converts to Float32 itself, puts the microphone's rate back afterwards, and never changes the output's rate.
  • Playing a song from a network share comes first. A library scan of the share no longer takes turns with the song you just played; scans wait while the song is loading and resume a few seconds after it is safe.
  • The first-time Transitions note appears in the window you turned Transitions on in. Turning Transitions on in Settings used to show the note on the main window, which came to the front and made Settings seem to close.
  • One moon. The Transitions note, the transport bar's Transitions button and the Up Next markers now use Vespertine's single moon instead of the two-crescent symbol. Transitions are still off by default.

Checked

  • New tests cover silence trimmed at the ends of songs in Crossfade, Smart Mix and Live Set. Nothing in playback changed.

Not yet checked

  • Dolby AC-4 and MPEG-H files are named but still can't be played.
  • Room Correction with a microphone at its own rate was tested with simulated devices and a loopback output, not on a real UMIK-1 with an external DAC.

Vespertine-0.15.1.dmg · 28 MB · already installed? It updates itself, or brew upgrade --cask vespertine

Earlier releases

  1. 0.15.0

    Vespertine 0.15.0 adds Transitions, an optional way to blend one song into the next (Crossfade, Smart Mix and Live Set); lists every copy of an album and lets you play, favorite or star any copy of any song; shows channel meters for Dolby Atmos and DTS; and lets the Visualizer draw in the colours of the album cover.

  2. 0.14.2

    Vespertine 0.14.2 makes the Visualizer's meter lights behave like the real thing, draws the spectrum for Dolby Atmos rendered by macOS, and shows newly plugged-in output devices straight away.

  3. 0.14.1

    Vespertine 0.14.1 adds a Visualizer window: the music drawn live in eight styles, starting with a spinning record, in a window of its own that never touches the sound going to your DAC.

  4. 0.14.0

    Vespertine 0.14.0 adds room correction: measure your speakers with a UMIK-1 microphone and play through filters made for your room. It also keeps network playback from running dry.

  5. 0.13.2

    Vespertine 0.13.2 plays 5.1 DSD in Spatial Audio on AirPods, tells you when audio is converted or downmixed, and no longer hangs on quit.

FAQ

Questions, answered.

Is it really free?

Yes. Vespertine is free and open source under the GPL-3.0. There’s no account, no subscription, no ads and no telemetry (privacy). It only goes online to check for updates, and to reach MusicBrainz, the Cover Art Archive or ListenBrainz, or to find covers for your Discord status, when you ask it to.

What do I need?

macOS 14.4 (Sonoma) or later, on Apple silicon or Intel. Intel hardware is untested; the Intel build has run under Rosetta, and reports from real Intel Macs are welcome.

How do I install and update it?

Download the DMG, open it and move Vespertine to Applications. It’s signed with a Developer ID and notarized by Apple, and it updates itself; every update is signed. With Homebrew: brew install --cask szeremeta1/tap/vespertine, then brew upgrade --cask vespertine or the app’s own updates.

Does it stream from Qobuz, TIDAL or Apple Music?

No. Vespertine plays music you own, on your Mac, on external drives or on a network share. DRM-protected Apple Music subscription downloads cannot be played.

How do I know it’s actually bit-perfect?

The signal path reads back what Core Audio actually did: the device’s nominal rate, its physical format and who holds it. The decoders have automated tests (TrueHD against its source, DTS against FFmpeg’s own decoder), a built-in loopback test checks the software path sample by sample, and vespertine-probe lets you check your own hardware. How to verify it yourself.

Does it do room correction?

Yes. Measure your room with a UMIK-1 or another calibrated USB microphone at one to five spots around your seat, and Vespertine fits filters to each speaker and lines up their delay and level, in stereo or 5.1 (5.1 is tested with simulated rooms and imported profiles, not yet in a real 5.1 room). It also imports REW and Equalizer APO filters and impulse responses. It’s off by default, playback stays bit-perfect while it’s off, and the signal path says ROOM CORRECTION while it’s on. How room correction works.

Can it play SACD and DVD discs?

It plays their images. SACD .iso images, stereo and multichannel, DST-compressed or plain, and the LPCM music on DVD-Video images or VIDEO_TS folders play straight from the image, with nothing extracted. DVD-Audio isn’t supported, and encrypted (CSS) DVDs need a decrypted copy.

Does it play Dolby Atmos?

Dolby Digital Plus with Atmos plays through macOS’s object renderer, as Spatial Audio on AirPods (head-tracked where macOS provides it). TrueHD Atmos and DTS:X play their lossless channel bed; their objects aren’t rendered. Bitstream to an AV receiver is experimental, untested on real receivers; reports wanted.

Will it change my files?

Only when you edit tags, and then each file is backed up first and can be reverted in one step. Folders are referenced in place; importing makes APFS clones that take no extra space.

Which hardware has it been tested on?

PCM playback has been tested up to 768 kHz and DSD256 on a Fosi Audio ZD3, and up to 384 kHz and DSD128 on a FiiO K11 (developer reports; see docs/DEVICES.md), where integer mode was tested too. It has also been tested on AirPods Max over USB-C and Bluetooth, MacBook Pro speakers, and a Sony TV over HDMI in 5.1. Intel hardware is untested. Receiver bitstream and multichannel DAC output are experimental, untested on real receivers and multichannel USB DACs (one Sony TV over HDMI has been tested: see docs/DEVICES.md); reports wanted.

Is it in my language?

Probably: the interface is in English and 44 other languages, including right-to-left Arabic, Hebrew, Persian and Urdu. Vespertine follows the language set for it in System Settings. Corrections from native speakers are welcome on GitHub.

Support

Help Vespertine grow.

It’s free, open source and built in the open. Here’s how to help.

  • Sponsor on GitHub

    Vespertine is free. If it’s useful to you, a sponsorship on GitHub supports its development.

  • Report your DAC

    Tell us what your DAC, interface or receiver did. Every device report widens what’s been checked on real hardware.

  • Fix a translation

    Spot a clumsy phrase in one of the 44 languages? Open an issue with the better wording.

  • Read the code

    Bug reports, pull requests and questions are welcome. The signal-path conditions and their tests are all in the repository.

Download

Play your surround collection on your Mac.

Free · open source · version 0.15.1 · macOS 14.4 or later · Apple silicon and Intel

Or with Homebrew: brew install --cask szeremeta1/tap/vespertine