Specula
Delivery and the verdicts, the tasks, scripting, songs, privacy and the license. The user guide has every setting and key in detail.
Delivery
No. The delivery card judges the whole file as soon as it has loaded, and the reports read the same pass. ⌘Return measures a selection into a card of its own when a part of the file is what you need.
Deliver to, over the delivery card, names the delivery category and its primary target, such as Deliver to Spotify · Music streaming. Its picker (Analyze › Deliver To…, ⇧⌘D) lists five categories, Music streaming, Podcast, Audiobook, Film and TV and Broadcast, with up to four checked targets each and one primary, the target the verdict leads with. A note under Deliver to suggests a better category when the file fits one, such as speech under Music streaming; the category changes only when its switch is pressed. See Deliver to in the user guide.
Hear at Spotify's level is playback only: the file plays with the platform's gain, through a true-peak limiter at its ceiling, and the file itself is not changed. Normalize to −14 LUFS commits: it opens the Edit task with the Normalize panel filled in, shifts the whole file by one gain, holds the ceiling with a two-pass true-peak limiter where the gain raises the level, and lands in the edit history. Both appear only where the target changes the level. ACX gets neither; its fix is Limit peaks to −3.1 dBTP.
ACX asks for peaks less than −3 dB and a noise floor less than −60 dB RMS, so a reading exactly on either limit fails, and Specula judges it so on the delivery card, in the chapter table, in the room check and in the reports. Limit peaks for ACX limits to −3.1 dBTP, and Level chapters starts there. Every other target's ceiling is a maximum the limit itself meets.
Within limits. Level dialogue, in the Speech task, drops the room tone between phrases before any makeup gain, so the floor ends up lower, and it predicts the floor before Apply. It is a gate, not a denoiser: the floor has to be close to passing already. For chapter-to-chapter consistency, Level chapters in the Chapters task levels the whole book in one move. See the audiobook and podcast workflows.
Yes, under Music streaming. Check Apple Music's AAC encode on the delivery card (Analyze › Check the Apple Music Encode) encodes the file as Apple's afconvert does at 256 kbps (128 kbps for mono), decodes it and states the encode's true peak and its samples over full scale. Where the encode goes over the ceiling, Limit peaks offers the ceiling less what the encode added, and Hear the encode in Compare puts the encode beside the master. See the mastering workflow.
Tasks and editing
Deliver to replaces the Mode, with five categories in place of four. Dialogue mode is the Speech task (⌘5) and Chapter mode the Chapters task (⌘4). The user guide's Coming from 1.4 section lists where everything went, shortcuts included.
Yes. ⌘1 to ⌘7 choose the tasks (Inspect, Edit, Compare, Chapters, Speech, Spectral, Record), ⌃1 to ⌃7 show and hide the views, and each task has its own keys, such as ⌫ Cut, ⌘T Trim and ⌥↑ / ⌥↓ gain in Edit. Help › Keyboard Shortcuts lists every key, and the complete map is in the keyboard reference.
Yes, in the Edit task: the Plugins drawer chains the Audio Unit effects installed on the Mac, reorders and bypasses them, and opens each plugin's own window, while Loudness details' Live side follows the processed sound. Render bakes the chain in as an undoable, latency-compensated edit; Render to Compare Slot sets up an A/B against the source. See the editing workflow.
Audio Units only (AUv2 and AUv3); VST and VST3 are not loaded. Most macOS effect plugins install an AU alongside their other formats, and those show up in the plugin browser, grouped by manufacturer. Instruments are not listed, since the chain processes an existing file. AUv3 plugins run out of process, so a crash in one cannot take Specula down.
Yes, in the Spectral task (⌘6): draw around the blemish on the zoomable spectrogram with the rectangle, lasso, brush or wand, then Attenuate, Erase or Repair it. Include harmonics adds a squeak's overtones to the selection, where they ring. Space, ⇧Space and ⌥Space audition the span, the selection alone and the result before Apply, and everything outside the selection stays bit for bit. See the spectral repair workflow.
By default no: Save As (⇧⌘S) writes a new file and refuses the open file under any spelling, so the source stays as it was. Settings › Editing and plugins › Allow Save to overwrite the original file makes Save (⌘S) replace the open WAV, AIFF or CAF with the edited audio, keeping its bit depth, sample rate, channel layout and container: the format is read from the file's header, so a WAV named .WAV or .bwf is written back as a WAV. The new data goes to a temporary file and is swapped in only once complete, so a failed save leaves the original untouched, and Specula asks before each overwrite until "Don't ask again" is ticked. Compressed files and raw PCM still save as a new file, and metadata chunks (BWF, iXML, cue points, markers) are not carried over. Details in the user guide.
Yes: the Signal Generator (⌘G) builds band-limited tones, white, pink and brown noise, impulses, sweeps and silence, stacked or sequenced per channel, and writes WAV, AIFF or CAF, or opens the result in the main window. The same generator runs as specula generate, with a --spec-file JSON form for layered multichannel signals. See the Signal generator guide.
Yes: set up the routing in Output and Routing (⌥⌘O), then Render to File… writes the routed result to a new file with every gain, phase and ±90° shift applied, and only the routed outputs (a 5.1 → stereo fold makes a 2-channel file). The command line's edit subcommand does not render a routing; that is in the app only. See the flexible monitoring workflow.
Yes. Swift, AVAudioEngine, and Metal for the spectrograms. Right-clicking audio in the Finder offers three Services, Shortcuts and Spotlight get App Intents, and on macOS 26 and later the chrome is Liquid Glass, with solid chrome as an option in Settings › General › Appearance.
Batch and scripting
Yes. File › Check a Folder… checks every audio file in a folder against Deliver to and writes a report per file and a CSV of the rows. The specula command-line tool and the Shortcuts actions run the same engine from a script. See the automation workflow.
Yes. The specula command-line tool has five subcommands (analyze, compare, edit, generate, report) built on the same engine as the app, with deterministic sorted-key JSON output. Specula › Install Command-Line Tool…, or the button in Settings › General, links it into /usr/local/bin. The full command reference is in the user guide.
Yes: eight App Intents (Get Measurements, Compare Files, Get Compare Diff, Get Report, each in a file-input and a path-input variant) return structured output that chains into later Shortcut steps. Spotlight phrases such as "Measure with Specula" register on their own, and the path variants accept quotes, tildes and file:// URLs.
Yes: specula report mix.wav --mode music --format pdf --out report.pdf from the terminal, the Get Report Shortcut action with Format set to PDF, or Get Report from Specula in the Finder's Services menu. They match the app's report; HTML and JSON come from the same --format flag.
No. specula report --mode podcast judges the podcast mode's default targets, Apple Podcasts and Spotify (Podcast), and the Shortcuts actions take the same four modes (music, podcast, vod, broadcast). ACX is judged in the app and in Check a Folder, under Deliver to Audiobook.
--gain -3 get rejected by the command line; why?A bare leading - parses as an option name, so negative numbers go in the --option=value form: --gain=-3, --normalize-lufs=-14. Positive values work either way.
Songs
Music analysis needs macOS 27. It runs Apple's on-device music analysis, which exists on macOS 27 and later only, so on earlier systems Analyze › Analyse Music is unavailable, and a song opens without the Music group, the section band under the ruler, the bars ruler, the Snap chip and the Stems view. Everything else in Specula runs on macOS 14 and later. The analysis is Apple's and runs on the Mac; no audio is uploaded, and the specula command-line tool does not run it.
Apple's model separates the file into exactly four stems: Vocal, Drums, Bass and Other. It is a stem split, not an instrument list, so a trumpet, a synth pad and a string section all land in Other. On speech and other non-musical material the model still returns a beat grid and a structure, and they are not meaningful: on the same speech file two runs gave 84 and 101 BPM. It also finds no key on such material, so when no key is found the Stems view hides the beat and pace rows, dims the tempo and says the tempo and structure are unreliable. The stem lanes stay useful; speech lights the Vocal lane and nothing else. Details in the music analysis guide.
The difference, in LU, between two integrated loudness readings in the Music group's Stem-Gated rows: one over the file's blocks where Apple's analysis marks the vocal as present, one over the bed without it. Both are Specula's own BS.1770-4 integrated measurement over the file's 100 ms blocks, gated by the stem's presence spans. A positive balance means the vocal sections run louder than the bed. Either side needs at least 10 seconds of audio above the absolute gate, otherwise it reads "-"; a song with drums throughout has no "No drums" reading for that reason. The same three numbers exist for drums, and the JSON report carries all of them under stemGatedLoudness, kept apart from Apple's musicAnalysis block. See the songs workflow.
Privacy and support
No. Loudness, speech detection and the music analysis run on the Mac. The app's only outbound connections are update checks and license validation, and neither carries audio. See the privacy policy.
The Record task (⌘7) captures from an input device, so macOS shows its standard permission prompt the first time it opens. Takes are written to the Mac and nowhere else, and are kept in ~/Library/Application Support/Specula/Recordings for seven days unless saved. See the recording workflow and the privacy policy.
Email hello@headroomstudio.dev, or use Help › Send Feedback in the app; both land in the same inbox.
License
Yes, for every Specula license. Specula updates itself through Check for Updates… in the app menu, and 2.0 keeps the settings 1.x had.
No. Specula is a one-time purchase, $99.99, with a 7-day trial of every feature. The command-line tool and the Shortcuts actions share the app's license and trial.