Release notes

Every version of Reflect, and the story behind what changed. Newest first.

v0.14.5

Clearer setup and update checks

Update checks show progress and keep the no-update or check-error result inline in Settings.

The setup assistant scrolls to the active step and keeps its next action in view.

Optional beta diagnostics help identify where setup or measurement stops.

  • Update checks show their progress
  • Keep the next action in view
  • Find where setup stops

v0.14.4

Setup diagnostics survive relaunch

If Reflect closed before the setup event reached the diagnostics service, that event could be lost. Reflect now saves it to disk and retries after relaunch, so support data for room correction on Mac is less likely to disappear mid-test.

v0.14.3.2

Clean edges on the EQ graph

The graph in the menu shows a narrower frequency window than Reflect actually measures. Measurement points outside that window were pushed onto the left and right edge, where they drew stray vertical lines. Reflect now leaves them out and ends each curve exactly at the edge, in the menu, the expanded graph, and the PNG export. Audio and filters were never affected.

v0.14.3.1

A paused DAC is not an error

With Follow Mac output switched off, powering down the DAC Reflect was correcting showed a red Error and asked you to pick another output, even though correction was already set to resume when the DAC came back. Reflect now pauses, says the output is off or disconnected, and resumes about a second after you switch it back on.

v0.14.3

Correction that follows your DAC

Reflect used to stop correcting when you switched off a desktop DAC, and it stayed off when the DAC came back. Starting again on the fallback output would have applied one room's filters to different speakers. Now the filters remember the output they were measured on. When that output returns, correction resumes after a short settle delay, and any other output asks before it runs.

Sharing a measurement with the 100 Rooms project is now one clear choice. Reflect asks once after a successful measurement, keeps your answer, and retries consented uploads until they arrive, without creating duplicates. If you correct with REW filters, you get a single invitation to measure your room with Reflect, and your imported filters stay in place.

  • Correction resumes when your output returns
  • Asks before using filters elsewhere
  • Short check-in after a few days
  • One explicit 100 Rooms sharing choice
  • REW users keep their imported filters

v0.14.2

Multichannel correction without the drop

The engine used to treat every output as a stereo mixdown. On multichannel interfaces such as the Universal Audio Apollo x16 Gen 2, that could make Reflect about 21 dB quieter even when correction was bypassed. The beta now prefers the selected device's stream shape, applies compensation only where supported, and preserves channels outside the corrected stereo pair.

This release also opens the 100 Rooms project. If you opt in, Reflect shares derived response, filter, quality, and deconvolved impulse-response data to help validate room EQ against real rooms. Raw microphone recordings, device identity, and customer identity stay out of the export.

  • Fixed multichannel output level loss
  • Preserves untouched channels on multichannel routes
  • Added route-health diagnostics for tap selection
  • Opt-in 100 Rooms measurement export
  • Raw microphone recordings never uploaded

v0.14.0

Correction you can verify

The correction engine used to evaluate each filter's shape before knowing how loud that filter would run. Now every filter is predicted at its real gain. On our benchmark rooms, Reflect's correction curve now deviates from REW's by about 0.2 dB on average, down from 0.35 dB.

There is also a new graph inside the app. The moment a sweep finishes, you see your room's measured response next to the correction curve, so room correction on your Mac is something you can watch, not just trust. Tap any filter marker to read its frequency, gain, and Q.

  • Correction curve within ~0.2 dB of REW
  • Live measurement graph after every sweep
  • Tap a filter marker for its exact values
  • New app and menu bar icons

v0.13.1

Exact Q values in exported filters

Filters that Auto-EQ capped at the maximum Q now show and export as Q 5.000 instead of optimizer leftovers like 4.982, so exported REW filters read the way you expect. We also fixed opt-in diagnostics that only counted correction sessions longer than five minutes.

v0.13.0

Updates that come to you

Reflect now updates itself through Sparkle, so most testers will not need to reinstall by hand again. The parametric EQ macOS testers were already applying is now something you can actually see: hover or tap a filter to read its frequency, gain, and Q, or open the full list of everything applied.

Setup got a calmer three-step flow, and there is an opt-in diagnostics option that helps us catch bugs without ever including your audio or measurements.

  • Automatic updates through Sparkle
  • Inspectable filter markers on the graph
  • Redesigned three-step setup wizard
  • Opt-in diagnostics, no audio included

v0.12.4

Correction that respects your sample rate

Correction used to reset your output device's sample rate without asking. Now it follows whatever rate is already active and puts your hardware back the way it found it once a measurement finishes. That matters if you calibrate speakers on a Mac through a separate audio interface, where a silent rate change can quietly throw off other software sharing that device.

Measurement now runs a fixed ten-second sweep and prefers 48 kHz, restoring your original rate afterward. The correction graph also switched to the same DSP math the real-time engine uses, so what you see matches what you hear.

This is also the first release gated by our own parity suite. Every build now has to match REW's correction curve on a set of benchmark rooms before it can ship, so a regression like the sample-rate reset above gets caught before it reaches a beta tester.

  • No more silent sample-rate resets on output
  • Measurement restores your hardware rate afterward
  • Correction graph now matches the real-time engine
  • Clearer errors when devices use different rates
  • Builds now gated by a parity check against REW

v0.12.3

Fewer false failures on USB mics

Some USB audio interfaces add a short delay before audio actually starts flowing. Reflect was reading that gap as silence and failing the sweep, even on interfaces that were working fine. We fixed the false rejection and split the diagnostics so a genuinely quiet room EQ measurement no longer looks identical to a routing delay.

Audio Capture permission handling also got more precise. Retrying setup after granting access is more reliable, and the diagnostics now say plainly when access is fine but something else caused the failure.

  • Fixed false too-quiet failures on USB interfaces
  • Diagnostics now separate real silence from delay
  • More reliable retry after granting Audio Capture
  • Clearer errors when setup fails for other reasons

v0.12.2

No more ambiguous captures

Running a measurement while correction was active used to produce a capture that mixed the corrected and uncorrected signal, which is not something you can build a room correction Mac profile from. Reflect now blocks measurement while correction is running instead of silently accepting a bad capture, and a blocked attempt no longer shows up as a failure.

Diagnostics also got more detailed: frame counts, peak and RMS levels, signal-to-noise ratio, device routing, and clipping flags are all included now, which makes it much easier to tell what actually went wrong.

  • Measurement blocked while correction is active
  • Blocked attempts no longer count as failures
  • State is preserved when measurement is blocked
  • Richer diagnostics: SNR, routing, clipping, and more

v0.12.1

Correction survives a cancelled measurement

If you cancelled a sweep, or it failed partway through, Reflect used to drop your existing room EQ correction along with it. Now the previous correction stays in place until a new measurement actually succeeds.

Exported filter files also get a date and time in their name, so re-running a measurement no longer overwrites the last export.

  • Correction is kept if a measurement fails
  • Exported filenames now include date and time
  • Private beta build for invited testers

v0.12.0

The private beta opens

The first invited build did the whole job end to end: measure your room with the mic you already have, then let Reflect correct everything your Mac plays through CoreAudio Process Taps. If you already live in REW, you can import your own filters instead of starting from scratch.

  • Built-in Measure mode
  • System-wide correction via CoreAudio Process Taps
  • REW Generic filter import
  • Private beta for invited testers

Want the latest build? Download Reflect for Mac.