Changelog

Every release, every change.

Direct and App Store builds share the same version number. Some features differ because Apple's sandbox limits global shortcuts, automatic pasting, and link transcription.

1.0.24

2026-09-15

"Scratch that" corrections now land every time, in every mode.

Fixed

Spoken corrections are applied before any model sees the text. Say "go to school, scratch that, to home" and the paste reads "go to home", whether you are on Exact, Clean or Polished and whichever cleanup model you picked. Corrections in the middle of a sentence and in the middle of a longer dictation work too, and the words after them stay.

Legitimate words stay put. "Scratch that off the list" is treated as what you said, not as a command.

1.0.23

2026-09-15

Parlin now says why it watches your Downloads folder.

Fixed

Downloads folder permission explained. Recordings AirDropped from your iPhone land in Downloads, and Parlin moves them into your library on its own. The system permission prompt now says exactly that. Nothing else in the app changed.

1.0.22

2026-09-14

Picking Exact (or any mode) on the floating control now sticks.

Fixed

The mode you pick on the floating control stays picked. The app could end up running two dictation stacks, and the second one left a floating control on screen whose buttons did nothing: choosing Exact snapped back to Clean. One stack now lives for the whole app, and every mode change is written to the performance log.

1.0.21

2026-09-14

Dictation writes Parlin when it heard Pauline, and two summary guards that missed copied transcript lines now catch them.

Fixed

"Pauline" becomes Parlin where a person cannot be meant. The engines hear the product name as Pauline in about one dictation in eighty. The swap runs next to a product word, after open, use, launch, install or quit, or bare in a dictation that talks about software and does not frame Pauline as someone who speaks, acts or is spoken to. "Pauline sent the invoice" stays as said.

A copied transcript turn no longer slips into the key points behind a period or a short script. The echo guard read "Okay." with its period and matched nothing, and a complete Persian turn was too short for the guard's index. Both are fixed for every language; on the Persian meeting that surfaced it, echoed points dropped from six to four.

1.0.20

2026-09-13

Recordings from your iPhone land in the library by AirDrop, one engine rule covers every speech path, and the meeting-note PDF got a typographic pass.

Added

Recordings from Parlin Recorder on iPhone arrive by AirDrop. The free iPhone app records a lecture or a meeting and sends it as a .parlinrec file. Parlin watches Downloads while it runs, moves the file into an "iPhone recordings" folder in the library within a second of it landing, and the row menu offers Transcribe. Double-clicking the file opens it into the library when Parlin is closed. Nothing listens on the network; the file is plain AAC with a small manifest inside.

Changed

One engine rule for dictation, meetings and files. Parakeet v2 for English, Parakeet v3 for 24 European languages, Whisper for everything else. A meeting set to Auto starts on Whisper and locks to Parakeet v2 after three English chunks; a file on Auto stays on Whisper. The choice is written to perf.log as engine-route: so a wrong pick can be read off the log.

The meeting-note PDF reads like a document. A measured type scale, sections with real headings, a speaker palette that clears 5.4:1 contrast on every name, centred checkboxes on action items and a three-part footer with the meeting title, the date and the page.

Fixed

A five-second recording no longer gets its transcript back as a "key point". A bullet that is most of the transcript is dropped; a recording that short gets an empty Key points section, which is the honest answer. Quotes from long meetings are untouched.

1.0.19

2026-09-12

Persian and every other Whisper language dictate as fast as English, the meeting mic stops writing down your own speakers, and 8 GB Macs keep more memory free.

Changed

Dictation in Persian, Spanish, German and every other Whisper language now transcribes while you hold the key. The streaming decoder that made English fast in 1.0.18 now runs for Whisper too. On the same 24-second Persian dictation the wait after release dropped from 11.1 s to 1.1 s.

Spoken lists reach the paste in every mode. "Bullet point", "number one", "first one is" become real lists in Clean and Polished on every cleanup tier, the retry after an echo keeps the list rule and your dictionary, and a list no longer pastes with a literal "\n" in it.

Stuttered doubles like "please please" and "the the" collapse to one word. Grammatical repeats ("that that"), numbers, quotes and code tokens are left alone.

Meeting notes read as speaker turns. A two-minute stretch by one person used to print as twenty "You:" lines; it is now one paragraph per turn, in the note and in what the summary model reads.

Your dictionary reaches the summary. Product and people names you added under Dictionary are spelled your way in the overview, key points, decisions and action items, not only in dictation.

8 GB Macs keep more memory free. With Parakeet as the dictation engine, the Whisper model no longer loads at launch and is released after each dictation until a file, link or meeting needs it; the meeting's live preview refreshes every 1.6 s instead of 0.8 s there, and its audio buffer for the end-of-meeting speaker pass is capped at 10 minutes per side instead of 30.

Fixed

A Persian dictation on Large v3 Turbo no longer decodes twice. The dictionary prompt made the recognizer return nothing on most Persian takes, and each empty result cost a second full pass. The prompt now rides only on English decodes; a Persian whole-file decode went from 11.1 s to 3.2 s on the same recording.

The meeting mic no longer transcribes the Mac's own speakers. When the far end plays through your speakers, the mic hears it too, and the 2026-09-08 note carried whole tutorial sentences, "#", "-" and "I accept Honda me" as You. Parlin now compares the mic's loudness shape against the system audio and skips a chunk that is the speakers heard twice before it is transcribed; the word filter behind it also learned that "gonna" and "going to" are the same words and that seven identical words in a row at the same moment are one voice, not two.

Every summary pass reports its time. perf.log now carries one line per model pass (topics, overview, actions, decisions, key points) with sizes and milliseconds, so a slow note can be read off the log. A 20-minute meeting summarizes in 29 s on Qwen3 8B on an M5 Max.

1.0.18

2026-09-08

Dictation lands faster, and meeting notes say what was said instead of who said it.

Changed

Dictation starts transcribing while you are still holding the key. Before, both the speech engine and the cleanup model started from zero the moment you let go, so the wait grew with every word. Parlin now decodes each pause-sized chunk as you speak and only the last few seconds after release. Measured on the same Mac: a 74-word dictation spent 1.2 s in the speech engine before, an 84-word one spends 0.28 s now. Custom words are still recognised; if anything goes wrong mid-stream, the whole recording is decoded the old way.

Fixed

Key points state facts, not who spoke. A meeting note used to list "Speaker 1 mentions using Sanity" fourteen times over; points now carry the fact itself, at most eight, with no near-repeats.

The summary no longer repeats a subject or pads with "X was discussed". Sections on one subject fold together, sentences that only say something came up are dropped, and one-line sections gather under "Also covered".

A decision the meeting reached is kept even when the key points restate it. The transcript's own choice words ("we go with", "fine, X it is") now decide.

Exports are named with the date. "Website Development Tools 2026-09-08.pdf" instead of the bare title, and a title with a slash no longer breaks the save dialog.

1.0.17

2026-09-08

The question coach works in Persian, Arabic and Urdu, and stops going quiet in a long meeting.

Fixed

The question coach now suggests questions in Persian, Arabic and Urdu. Questions in those languages end in "؟", and the coach only recognised the Latin "?", so every suggestion was thrown away once the meeting's language settled. During a 40-minute Persian meeting the panel kept showing five English questions from the first ten minutes and nothing else.

Stale questions leave the panel during a quiet stretch. Cards only aged out when the coach found a new question, so a long stretch with nothing new to ask left the same cards on screen for over an hour. A card now retires to the end-of-meeting shortlist after the conversation has moved on twice, whether or not a new question replaced it, and the coach no longer re-asks the model every fifteen seconds in that stretch.

A decision phrased without a choice word survives the summary. "The team will go with Postgres" was dropped as a copy of the action item "Migrate to Postgres", and a short second decision on the same subject ("Keep the newsletter weekly") was dropped as a repeat of the first. Both now stay in Key decisions.

A decision is no longer dropped because the key points say the same thing. When a key point restated a decision ("You agree to use Postgres as the main database"), the decision vanished from its own list. A key point that reads as a choice no longer disqualifies the decision.

1.0.16

2026-09-07

Sharper meeting notes: a stronger default model on capable Macs, and live lines that end on a pause instead of mid-word.

Changed

New installs start on the strongest cleanup model their Mac runs well. A 32 GB Mac gets Qwen3 8B, a 16 GB Mac gets 4B, an 8 GB Mac keeps the 1.7B. Meeting notes, decisions and key points are noticeably sharper on the bigger tiers, and the first download is larger (2.4 GB or 4.7 GB). Existing installs keep the model they have; the tier is still yours to change in Settings.

Fixed

A meeting's live lines no longer cut in the middle of a word. When you talk without a pause, Parlin used to close each block at exactly seven seconds, wherever that fell ("release version 1.0" on one line, ".15" on the next). The cut now lands on the quietest moment in the last two seconds of the block, and whatever follows it starts the next line.

A silent channel is no longer transcribed. In a solo meeting, or while only the other side talks, the quiet channel was still sent through the speech engine every three seconds. Silence is now dropped before it reaches the engine.

Glued words like "Releaseversion1.0" come apart. The fast engine sometimes drops the spaces around "version", "build" and similar words; the note now reads "Release version 1.0".

Key decisions list one decision once. The summary no longer repeats the same decision in two wordings, and no longer lists facts that already appear under key points as decisions.

The decisions list no longer goes empty when a decision is also an action item. When the same line came back as both a decision and an action item, the decisions list lost it; a line that reads as a choice now stays a decision.

1.0.15

2026-09-07

The fast dictation engine now speaks 25 languages, and the speech library behind Whisper is four months newer.

Added

Parakeet for 24 more languages. English dictation has always run on NVIDIA's Parakeet engine, which returns text in about a fifth of a second and never invents a closing line. That engine's multilingual model now handles Bulgarian, Croatian, Czech, Danish, Dutch, Estonian, Finnish, French, German, Greek, Hungarian, Italian, Latvian, Lithuanian, Maltese, Polish, Portuguese, Romanian, Russian, Slovak, Slovenian, Spanish, Swedish and Ukrainian. Pick one of them as your language and the model downloads once (about 485 MB); Whisper covers you until it lands. Persian, Arabic, Chinese, Japanese and the other languages stay on Whisper.

Changed

WhisperKit updated to 1.1.0. The library that runs Whisper on the Neural Engine moves from a March snapshot to the August release, which includes the upstream fix for the empty-transcript bug 1.0.14 worked around.

Short dictations no longer pay for a second cleanup pass. When the cleanup model returned a short sentence unchanged and already punctuated, Parlin asked it again. That was the right answer the first time; it is now accepted, saving a quarter second on most short takes.

Fixed

Converted audio files are removed when a file job fails or is cancelled. The temporary WAV Parlin makes from a video or compressed audio file used to stay in the temp folder unless the transcription finished.

1.0.14

2026-09-07

Dictation in languages other than English works again on the most accurate model, and a failed take is never thrown away.

Fixed

"No speech was detected" on Large v3 Turbo with a custom dictionary. With any dictionary terms saved, the Large v3 Turbo model returned nothing for every take, in every language, and the app reported it as silence. The dictionary is no longer fed to that model (the smaller models keep it), and any take that comes back empty is decoded a second time without it.

A take that produced no text is kept. It now lands in History as a recording with no transcript, under your normal audio retention setting, so you can play it back or retry instead of losing it.

Two different problems no longer share one message. A quiet recording still says "No speech was detected." A recording the engine could not read says "Nothing was recognized. The recording was kept in History so you can try again."

Switching Whisper models mid-take cannot hang the shortcut. The model load has its own time limit, Escape cancels it, and a take that hits the limit is kept.

Changed

The model is named for what it is. "Large v3" was the compressed Large v3 Turbo build all along; the picker, the download prompt and the language suggestion now say "Large v3 Turbo, 627 MB".

1.0.13

2026-09-03

The hardening half of the September audit: exports that obey the subtitle rules, meetings that can always be summarized, and a dictionary that respects ordinary words.

Fixed

Subtitles and burned captions follow one rulebook. The .srt and .vtt exports, the preview and the burned-in video used to break text three different ways, and a strict WebVTT player choked on an "&" in the text. All three now share a single cue builder: at most two lines of 42 characters, one to seven seconds per cue, no overlapping or zero-length cues, timestamps rounded to the millisecond (2.40 s printed as 02,399 before), and VTT escaping for "&", "<" and ">".

A rescued transcript keeps its timing. When the speech engine dropped most of a long file and Parlin recovered the full text, that text landed as one caption spanning the whole video. It is now spread across the original segments in proportion to where the words were.

HDR and wide-gamut video no longer exports washed out. The source's colour primaries, transfer function and matrix are carried into the exported file.

A meeting note can always get its summary. A meeting that ended through a quit, a crash, Cancel or Discard used to stay a bare transcript forever. Every note now records whether its summary was written; an unfinished one opens with a "Summary not written" banner and a "Summarize now" button that runs the same pipeline Stop uses.

Cancel during the finishing stage actually cancels. The Cancel button on the finishing screen only stopped the progress bar; the meeting kept working in the background. It now stops the summary, saves the transcript as unfinished and opens the note. Discard no longer spends up to 45 seconds resolving speaker names for a note it is about to delete.

A summary can no longer loop forever. If the note model echoes its input instead of condensing it, the summarizer used to recurse with the GPU pinned and the note stuck on "writing". It now stops after three passes or as soon as a pass stops shrinking the text, and a cancelled meeting stops the model at once.

A hole in a meeting transcript is marked. When a chunk was cancelled mid-meeting the note read as continuous speech across the gap; the gap marker now appears the same way it does for any other failed chunk.

"Please stop here" no longer pastes "please Cohere". The decoder-side rescorer glued two ordinary words into one span and matched it against a bundled product name at half similarity. A phrase made of ordinary words now needs a near-exact match before it becomes a product name; "orb stack" still joins into OrbStack.

The dictionary leaves ordinary words alone. "The revenue cats are hungry" no longer pastes RevenueCat, and a bundled product name that is also an English word ("linear", "notion", "render") is no longer capitalized on a case match alone. A word you added to your own dictionary still is; that is explicit intent.

A microphone that disconnects mid-sentence keeps what it heard. Unplugging a headset while holding the shortcut used to discard the take after a three second wait. The audio captured before the failure is transcribed like a normal stop.

Changed

Forty-nine new unit tests cover the export path (SRT and VTT golden files, cue layout, the rescue redistribution), the summarizer bounds, the note finalized flag, the dictionary guards, the hotkey re-enable path and the scratch-that comma cases.

1.0.12

2026-09-03

Changed

The $39 launch price now runs to October 31, 2026. The launch announcement went out later than planned, so the window moved once to give it 60 days. The app, the website and the store all carry the same date.

"Kwon" is a surname again. The dictionary no longer hard-swaps it to "Qwen"; the model still recognises "Qwen 3" and treats a bare "Kwon" as a hint it weighs against the sentence.

1.0.11

2026-09-03

A quality pass over dictation, meetings and caption export: nothing gets lost, nothing gets stuck.

Fixed

A reset phrase inside a sentence no longer erases what came before it. "I closed the PR, start over from main tomorrow" used to paste as "from main tomorrow", because "start over", "let me try again" and "I meant" were treated as commands wherever they appeared after a comma. They are now only a command when nothing follows them, and "start over from", "let me try again with" and "let me restart the" are always ordinary speech.

A stuck transcription no longer blocks every later dictation. The speech step had no time limit, so a wedged decode parked Parlin in "Transcribing" until relaunch and refused meetings too. It now has a budget scaled to the recording (30 seconds minimum, 45 on 8 GB Macs, two minutes at most); when it runs out, the recording is kept and the next press works. A second press of the shortcut, or Escape while Parlin is in front, cancels a transcription you no longer want.

The shortcut no longer dies until relaunch. When macOS briefly disables an app's keyboard listener and re-enables it, a key release in that window was missed and every later press was swallowed. The listener now clears its state when it comes back.

Password fields are refused. Parlin used to type your dictation into a secure field and also leave it on the clipboard for any app to read. It now declines with a short message and copies nothing.

Quitting during a meeting asks first. Cmd-Q ended a live meeting instantly with no prompt, dropping the last chunk, the summary, the speaker re-pass and the question shortlist. Parlin now offers Finish and Save, Discard, or Cancel.

Burned captions fit the video. The caption font was scaled from a 400 pixel reference, so a 1080p vertical clip got 130 point text and 4K got 460, covering half the frame and clipping words behind an ellipsis. Text is now sized against a 1080 reference on the long axis, wraps onto at most two lines and splits longer lines into successive cues, applies the outline, keeps the source frame rate instead of forcing 30, exports 180 degree rotated clips upright, and reports real progress. Export Video also works on macOS 14.6 and 15; it was silently gated to macOS 26 while the button stayed visible.

Three animation loops that could freeze the window are gone. The meeting bar's blinking dot, the desktop control's recording ring and the drop zone's pulse ran on the pattern that froze Parlin on 2026-07-30. They now run on a clock.

1.0.10

2026-08-28

Dictation stops making you raise your voice.

Fixed

You don't have to speak up any more. Nothing in Parlin ever adjusted how loud your recording was, so the speech model heard audio five to ten times quieter than the voices it was trained on. Talking normally worked; talking quietly, tired, or sitting back from the Mac did not. Every dictation is now brought up to a normal level before it is transcribed, with a limit so a quiet room can never be amplified into noise the model tries to read words out of.

A quiet hold is no longer thrown away. Parlin decided whether anyone had spoken by comparing your loudest moment against one fixed number, and that number sat right inside normal speaking range. A real dictation that came in just under it was deleted before anything read it. The check now measures you against the room you are actually in, so quiet speech in a quiet room counts and a loud room with nobody talking still does not.

The same sentence twice now gives the same result. When the fast English engine failed, Parlin silently switched to the slower one and said nothing, which is why one take could come out noticeably different from the next. The switch and its reason are now written to the log.

1.0.9

2026-08-27

Meetings: Parlin knows your voice, the coach stops repeating the other person, and the live transcript lands sooner.

Fixed

A call on speakerphone now gets two speakers, not one long "You". Parlin only separated voices on the Mac's system audio; everything the microphone heard was labeled "You". Hold a phone call up to the Mac, or share a room with someone, and the whole meeting read as you talking to yourself. The mic is now separated too: one voice is "You", a second voice earns its own label after about 20 seconds of talking, and which one is you is decided by the voice profile below. If it is ever wrong, click the speaker label on any line and choose "This is me" or "This isn't me": every line of that voice, past and future, relabels at once. When the meeting ends, a second pass over the whole recording double-checks that there really were two voices.

The summary shows up in the note it belongs to. A long meeting's summary can take several minutes. Parlin waited three minutes, opened the note without it, and then quietly wrote the summary into the file on disk. The note on screen never updated, so it looked like there was no summary until you reopened it, and a Markdown export taken meanwhile left it out. The note now says "Writing the summary" while that runs and fills in on its own when it lands.

Question coach: no more repeats, and questions you already asked get checked off. Separate batches could reword the same question ("best aligns with", "best suits"), and both landed in the note. Questions are now compared on their content words, and a rewording never shows twice. When you read a suggested question out loud, or the conversation lands on it, the card checks itself off with "Came up in the conversation". Two things were also starving the coach outright: the bundled model often answered with three questions on one line, which Parlin threw away as "too long", and it liked to hand back the prompt's own example questions ("churn number", "March cutover") instead of asking about your meeting. Replayed against a real 38-minute call, the coach went from 1 usable question to 13.

The answer is marked, not just the question. Once a coach question is raised (you check it off, or it comes up on its own), Parlin marks the lines that answer it in the live transcript with a bar and an "Answers: …" caption, and "Show answer" on the card scrolls straight to it. The saved note and the PDF print the answer under the question, so a checked question is never just a checkmark.

Live transcript lands sooner. On an English meeting (Parakeet) a chunk now commits after 3 to 7 seconds instead of 5 to 10, the live preview decodes the last 4 seconds on Parakeet too (it was always Whisper over an 8 second tail, so it hogged the shared decoder), and the note write plus question matching moved off the turn that puts the line on screen. Each chunk's timings are written to ~/Library/Logs/Parlin/perf.log so "it feels slow" can be read off a file.

Parlin knows your voice. Which mic voice is "You" used to be a guess from the sound of the two voices, made once, at the moment the second voice first showed up, and never revisited. On a real call it picked wrong. Parlin now builds a profile of your voice from your own dictation recordings (nothing to set up; "Your voice" in Settings shows it and can rebuild it), and in a meeting the mic voice that matches the profile is You. Where there is no profile yet, the acoustic cues still decide, now with loudness as a second opinion, and the decision is re-checked as the meeting goes on instead of frozen at the start. The last line of a meeting also stopped losing its label, and a stray <unk> the speech model sometimes emits no longer reaches the note.

The coach no longer suggests what the other side just said. The bundled model builds its questions from the last minute of transcript, so when the other person asked and answered their own question ("what is the overall investment for phase 2?"), the coach handed it back as a suggestion, and because the words came before the card, it never checked itself off and reached the note as "never raised". A suggestion that restates a line already spoken is now dropped before it shows. Short questions ("What is the revenue split for royalties?") can also check themselves off now, when every one of their words lands within a few lines of each other.

Question coach: ranked and numbered, checked questions sink to the bottom. The coach now puts the question most worth asking first and the panel numbers them, so you can read "1" and say it. Checked-off questions used to drift to the top as newer ones aged out; they now sit at the bottom of their group. The saved note lists the shortlist numbered, best first, and the "also suggested" archive no longer includes questions the coach already judged as answered.

1.0.8

2026-08-23

The four cleanup modes finally do four different things.

Fixed

Clean, Polished and Summary each do their own job now. On longer dictations they could hand your speech back nearly word for word, so the mode you picked barely mattered. The cause was the instructions themselves: they had grown to roughly 3,000 words each, and the compact model that ships with Parlin answers an instruction that long by copying its input. Each mode now gets a short checklist it can actually follow. On a 91-word dictation, Polished came back at 52 words and Summary at 23, where both used to return all 91.

A long dictation always comes back as sentences. When the model returned one unbroken run of speech, Parlin now splits it in code, before a conjunction that starts a new clause and only once the sentence is already long. Not a word is changed, added or dropped.

Correcting yourself out loud works far more often. "Send it to Alice, scratch that, Bob" pastes Bob, and "I meant Friday" drops the Thursday you retracted. This feature was also switched off by accident most of the time: any contraction earlier in the sentence, like "I'm" or "don't", made Parlin treat the rest as a quotation and leave it alone.

Words in your dictionary no longer swallow ordinary ones. "ready" was coming back as "React", because the matching only asked how similar two words looked. An everyday English word is now left alone unless the only difference is capitalization.

Saying "dash" as a normal word keeps it. "I have to dash home" pasted as "I have to-home".

Em-dashes stopped slipping into your text. They were being stripped everywhere except the path push-to-talk actually uses.

The reveal card no longer risks a freeze on a very long dictation. Its word-by-word comparison had no size limit and ran while the window was drawing.

Changed

Every Mac now starts on the compact on-device model. Macs with 16 GB or more used to default to the larger one, which roughly doubled what a new install downloads. Bigger models are still one click away in Settings.

1.0.7

2026-08-22

Your dictionary now works inside the speech engine.

Fixed

Words you add to the dictionary are recognized while Parlin listens, not patched in afterwards. They used to be only a hint to the cleanup step, which is skipped on dictations under six words, so "Twilio service" kept coming out as "too low service". Parakeet now scores every dictionary term against the audio itself and swaps in the ones that match; Whisper gets your terms as its conditioning prompt.

The dictation bar names the engine that is actually decoding. It said "Transcribing with Whisper" even when Parakeet did the work.

Added

A one-time 97.5 MB recognition model download the first time you dictate with a dictionary. It runs in the background and dictation never waits for it.

1.0.6

2026-08-21

Tighter licensing. Nothing changes for anyone who paid.

Changed

A licence that can't reach the server still works for 7 days, now exactly 7. The offline window runs from the last real check, on a clock that only moves forward. Setting the Mac's date back no longer stretches it.

A copy of Parlin that was modified after we signed it stays locked. The app checks its own signature at launch and asks you to reinstall if it isn't the one we shipped. A normal install from the App Store or getparlin.com is never affected.

Fixed

Meeting notes no longer repeat each action item under Decisions. A meeting with four commitments and one decision used to read as nine outcomes.

A recording that could not be written to disk now says so when you stop, instead of transcribing a truncated file.

1.0.5

2026-08-20

Added

Settings now credits the models Parlin runs on your Mac. Open Settings and look under Acknowledgements: every speech and language model is listed with who made it, what it does here, and its licence.

Fixed

Exported PDFs print their headings properly. Summary topics used to arrive with raw ### markers in front of them.

Key Points no longer opens a bullet mid-sentence. When a recording was cut in the middle of a clause, the point built from it started on a lowercase word.

1.0.4

2026-08-20

Fixed

Dictation never pastes the same sentence over and over. The cleanup model could fall into a loop and repeat itself: one 25-word dictation came back as 482 words of the same sentence. Parlin now checks that the cleaned text is a sensible length for what you said, and pastes your own words instead when it is not.

Everything fixed in build 68 below is in this version too.

1.0.3

2026-08-13

The biggest update since launch. Faster English dictation, meetings that know

who said what and write themselves up, and a long list of fixes.

Added

Automatic speech engine, now the default. Parlin picks the engine for you: the fast Parakeet engine for English, Whisper when you set another language. English dictation lands in about 0.1 to 0.2 seconds. Nothing to configure.

Meetings work in the language you actually speak. Summaries, titles, and suggested questions come back in the spoken language, not English. A meeting that opens with one English word no longer drags the whole thing into English.

Better model for other languages. Set a non-English language and Parlin offers Whisper Large v3 once, which is far more accurate than the small default for languages like Persian. One tap, and it never nags.

Pause and resume a meeting. Pause drops the mic and system capture and keeps the note open. Nothing said during a pause is recorded.

A second, better pass on speakers. Press Done and Parlin re-reads the whole recording to re-label who said what with a global view of every voice, so a speaker split across two labels snaps back to one.

Edit meeting notes before exporting. Change any Markdown, add action items, save with Command-S.

Dictation stays on the clipboard. After a push-to-talk dictation the text is left on the clipboard, so you can paste it again anywhere.

Audio retention you control. Old dictation audio expires automatically, 30 days by default, or pick 7, 90, or forever. Transcripts are always kept.

Clean mode tidies more. It now splits run-on sentences and drops your repeats and false starts while keeping your wording and your voice.

Fillers and repeats go every time. "Um", "uh", and immediately repeated phrases are removed by a deterministic pass rather than left to the model. Intentional emphasis like "no no no" is kept.

Fixed

Parlin no longer freezes when macOS audio stops responding. If macOS's audio service got stuck, rare, usually after juggling audio devices, starting a dictation would hang the whole app with no message and no way out but Force Quit. Parlin now checks that audio is answering before it opens the mic, and tells you what happened instead of locking up.

Non-English dictation no longer comes out in English. Set Persian or Spanish, dictate, and you get that language.

Your mic is always you in a meeting. A solo meeting used to split your single voice into "You" and "Speaker 1".

Same-Mac meeting capture keeps your microphone live, and no longer forces your system volume down.

Meeting summaries stop putting words in the wrong mouth. Statements are attributed only to the speaker whose label precedes them.

Summaries stop inventing tasks. A lecture or a video no longer produces fake action items and decisions.

No more repeated-word walls in meeting notes from music, silence, or background noise on the call side.

Ending a meeting no longer gets stuck. The four summary passes ran at once and could pile up enough memory pressure to look like a freeze. They run one at a time now, at the same total speed.

Quitting frees your Ollama model. If you route cleanup through your own Ollama model, Parlin used to leave it loaded for up to a day, holding 4 to 30 GB for nothing.

Much less idle CPU. Decorative animations ran at up to 120Hz with the window buried, costing more than half a core all day. They run at 30fps now and stop when the window is inactive.

Faster paste. The clipboard path held the pipeline for 600 ms after the text had already landed.

Arrow keys no longer trigger an Fn shortcut.

Model downloads show real progress instead of sitting at "Connecting..." with a frozen bar.

The remix preview plays the video instead of showing a black box.

Parlin spells its own name right more often. "Pauline" and "Parliament" are corrected in context.

Build 68 (2026-08-20) fixes four things you can feel:

Deleting a lot of documents at once no longer freezes the app. Selecting thousands of items and deleting them locked Parlin up with no way out but Force Quit, because it re-read the whole library from disk once per document. Deleting 3,000 items took over 8 minutes; it now takes under a second, and shows a progress bar with a running count.

Key Points works on short, punchy videos again. Asking for Key Points on a video where the speaker talks in quick fragments returned "No key points", even though the points were right there. Parlin was throwing away any point that reused the speaker's own words, which is exactly what a key point should do.

Meeting notes stop losing their most concrete action items. An action item or decision built from what someone actually committed to, like "Send the deck to Karen by Friday morning", could be dropped from the note for repeating the words that were said. The items carrying a name or a date were the likeliest to go, and the note still looked complete.

Summaries say when they are running slowly, and stop if they stall. On a Mac low on battery, macOS can throttle the graphics chip about tenfold, and Summarize or Key Points would keep grinding with no time limit, which looks like a dead button. The status now says it is still working when a run goes long, and a run that has clearly stalled stops with an explanation.

Build 64 (2026-08-19) fixes a freeze:

Scrolling a long transcript or meeting note no longer freezes the app. Scrolling a long transcript could pin Parlin at full CPU with no way out but Force Quit. The cause was macOS's built-in text selection, which attaches an overlay to every paragraph and can re-measure them forever on long lists. Those overlays are gone from the long views. To grab text, right-click any paragraph to copy it (or the whole thing), or pick "Select Text" to highlight exactly what you want in a dedicated window that handles any length.

Shimmer and pulse effects can no longer stall the window. They now run on a clock instead of a looping animation, closing off a related rare freeze in the toolbars. They look the same; they just can't get stuck.

Build 61 (2026-08-16) adds a few refinements on top:

The voice meter reads your actual voice. The bars track quiet speech instead of pinning at the top, hold steady while you talk, and the resting pill is smaller and calmer.

Dictation never answers you. Dictate a question or a request ("write me an email...") and Parlin transcribes it instead of replying to it.

More names land right. RevenueCat, a spelled-out "M C P", and word-plus-number names like "s three" and "gpt four" come out as S3 and GPT-4.

1.0.0

2026-07-19

Changed

Build 57: the dictation control's voice bars now rise and fall with your speech instead of sitting at full height while you talk.

Build 56: after the trial ends, your past transcripts and notes stay readable and exportable. Only new work asks for a license, and nothing can ever auto-charge you.

Build 56: a heads-up appears in the trial's last 2 days instead of a surprise on day 7.

Build 56: the meeting question coach digs harder into technical gaps and won't suggest a question the conversation already answered.

Build 54: every model picker now shows a Recommended badge sized to your Mac's memory, and picking a model too big for it gets a clear warning and a confirm instead of a silent slowdown.

Build 53: model downloads ask first. The setup screen states the size before anything starts, every download shows live progress, and Skip keeps the app fully working on the built-in speech model.

Build 53: a fresh install downloads nothing at launch. Dictation, file transcription, and meetings run on the bundled model out of the box.

Added

Push-to-talk dictation with on-device speech recognition and cleanup.

Meeting recording with microphone and Mac audio capture, speaker labels, summaries, decisions, and action items.

Editable saved meeting notes, including manual action items and Markdown task checkboxes.

Local transcription for MP3, WAV, M4A, AAC, FLAC, MP4, MOV, and WebM files.

TXT, Markdown, PDF, SRT, and VTT export where supported by the selected workflow.

On-device translation, custom words, a recording library, and automatic audio retention controls.

A Direct build with global shortcuts, automatic pasting, link transcription, and in-app updates.

An App Store build with clipboard delivery and updates managed by Apple.

Fixed

Function-key shortcuts ignore arrow keys and other keys that macOS marks as function events.

Completed Markdown tasks written as [x] or [X] render as checked.

Meeting summaries omit empty action items instead of showing rows that contain only punctuation.

Meeting capture keeps the microphone active while recording audio played by the same Mac.

Missing source audio no longer hides a saved transcript.

Finishing or canceling a recording cannot start duplicate cleanup work.