Direct answer — How do you batch transcribe audio and video files on a Mac? Three routes work. Loop a command-line engine such as Whisper over a folder and maintain the script yourself. Attach a Folder Action so macOS fires a workflow whenever files land. Or use a transcription app with a built-in queue: drop the whole folder in once, pick a language and an export format, and let the Mac work through it unattended.
If you need to batch transcribe audio files on a Mac, the problem is almost never the speech recognition — local models have been good enough for years. The problem is the forty-seven files sitting in a folder, handed over to most tools one at a time.
That gap is what a transcription queue on a Mac closes. This guide covers the three practical routes for bulk audio transcription on macOS, the step-by-step pass with a folder-drop app, and the file-organisation habits that keep a long queue readable.
Why does batch transcription matter more than raw speed?
Because the cost of a backlog is attention, not processing time. A machine that takes four minutes per file and one that takes six are indistinguishable overnight; a workflow that needs you present between every file is not.
Three things go wrong when you process a backlog by hand:
- Attention fragmentation — come back, pick the next file, reset the settings, wait.
- Format drift — export settings chosen forty times by hand become forty slightly different exports.
- Silent gaps — nobody notices file 23 was skipped until a quote that should be there is missing.
A queue fixes all three: set the language and export format once, and every file inherits them.
What are your options for bulk audio transcription on a Mac?
Four routes, and they differ in what you maintain rather than in what they can do.
| Route | What you set up | How the queue works | Format handling | Where it breaks |
|---|---|---|---|---|
| whisper.cpp on the command line | Homebrew install, model download | You write the loop | 16-bit WAV only; ffmpeg conversion first | A Homebrew upgrade or a renamed model file |
| OpenAI Whisper CLI (Python) | Python environment, model download | Several files accepted in one command | Common formats, via ffmpeg | Python environment drift |
| Folder Action or Automator | Attach a workflow to a folder | macOS triggers on new items | Whatever your engine accepts | The engine step, not the trigger |
| Mac app with a built-in queue | Install it | Drop a folder, the app sequences it | Any common format macOS reads | Nothing to maintain |
The scripted route
Both major open-source engines can take more than one file. OpenAI’s Whisper repository documents the multi-file form directly: whisper audio.flac audio.mp3 audio.wav --model turbo, with the note that “the default setting (which selects the turbo model) works well for transcribing English”.
whisper.cpp is faster on a Mac but stricter about input. Its README states that the command-line example “currently runs only with 16-bit WAV files, so make sure to convert your input before running the tool”, and publishes the conversion command:
ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav
That single requirement is what turns a one-line loop into a two-stage pipeline. Convert, then transcribe, then clean up the intermediate WAV files — for every item in the folder.
The Folder Action route
macOS can watch a folder for you. Apple’s Mac Automation Scripting Guide describes Folder Actions as “a feature in OS X that lets you connect scripts to folders on your Mac”, where “a folder action script includes one or more event handlers that run in response to certain events, such as opening, closing, or adding items to the connected folder”.
The adding folder items to handler receives the list of new items, so the trigger side is solved natively — the transcription still has to come from somewhere, which is why this route is the scripted route with a nicer front door. Our walkthrough of automating file transcription on a Mac covers the engine side, including a local API you can call instead of maintaining your own script.
The folder-drop route
The third option is an app that owns the queue: drop a folder, the app processes files in sequence, and conversion, model management and the loop all stop being your problem.
The Mac has a crowded field of on-device transcription apps — MacWhisper, Aiko, Buzz, VoiceInk and Whisper Notes among them — and queue behaviour varies. Check the vendor’s feature list first: “supports batch” and “accepts one file at a time, quickly” are different products.
How do you batch transcribe a folder with Weesper Transcribe?
Five steps, and only the first one needs thought. Weesper Transcribe is a Mac App Store app that transcribes existing audio and video files on your machine, with batch processing as the feature that turns a backlog into one job.
- Collect the recordings into one folder. Mixed audio and video is fine — MP3, WAV, M4A, MP4, MOV and any other file macOS can read all queue together.
- Name them before you queue them. More on this below; it is the step people skip and regret.
- Drop the folder into the app. The queue builds from the folder contents and processes them in sequence.
- Set the language and the export format once. Transcription covers 57 languages, and finished transcripts export to nine formats: TXT, Markdown, SRT, VTT, DOCX, PDF, HTML, CSV and JSON.
- Point auto-save at a destination folder and leave it. Every finished transcript lands there without a save dialogue per file.
The practical limits worth knowing first
The free tier is a genuine tier, not a crippled demo: it uses the same engine and transcribes at full quality, but the App Store listing is explicit that it handles files “up to 15 minutes, one at a time, to plain text”. Batch processing, multi-hour files and the nine export formats are what the one-time Pro upgrade unlocks.
Two more facts that decide whether this route is open to you at all:
- macOS 13 or later, on Apple Silicon or on Intel Macs with AVX2 support (Haswell or later).
- No microphone, Accessibility or screen-recording permission is ever requested. It reads files you hand it, and that is the entire permission surface.
Everything runs on your Mac, with Metal acceleration on Apple Silicon. A queue of 200 client interviews is still 200 interviews that never left the machine — which is the whole argument for doing bulk work locally rather than posting it to an API.
How should you organise files before queueing them?
Spend five minutes on naming and save an hour later. A batch produces one transcript per input file, and each transcript inherits the source file’s name.
The Finder handles renaming natively. Apple’s macOS guide describes the process: “select the items, then Control-click one of them. In the shortcut menu, choose Rename”, then pick Replace Text, Add Text or Format to add an index, a counter or a date.
Four habits that hold up at volume:
- One language per batch. A fixed source language beats letting detection guess on forty short or noisy clips.
- One export target per batch. Subtitles and client documents are different jobs — queue SRT and VTT video work separately from interviews going out as DOCX.
- Test one file first. A representative recording confirms the language, format and naming scheme before a two-hundred-file run.
- Date-prefix filenames.
2026-03-14-interview-cfo.mp3sorts chronologically and survives being dragged into any other tool.
Finding a passage afterwards is its own problem — see how semantic search finds a quote by meaning across a whole transcript history.
What does batch processing not fix?
Audio quality. A queue changes when files are processed, never how well.
NVIDIA’s model card for parakeet-tdt-0.6b-v3 makes the size of the effect concrete. On English-only evaluation sets, the same model reports:
| Test set (English) | Word error rate | What it contains |
|---|---|---|
| LibriSpeech test-clean | 1.93% | Read speech, clean audio |
| GigaSpeech | 9.59% | Mixed real-world audio |
| AMI | 11.31% | Multi-speaker meeting recordings |
| Earnings-22 | 11.42% | Earnings calls |
A sixfold swing between a clean read passage and a recorded meeting, driven entirely by the recording. The averaged figure across the Hugging Face Open ASR Leaderboard is 6.34%, which tells you less than the spread does.
The practical reading: a clean recording beats a better model, and no batch size removes the editing pass. If you are still choosing an engine, our Parakeet and Whisper file-transcription benchmark compares them on exactly this kind of material.
Frequently asked questions
Can I transcribe a whole folder of files at once on a Mac?
Yes, three ways. A command-line engine can be looped over a folder: OpenAI’s Whisper repository documents passing several files to one command, as in whisper audio.flac audio.mp3 audio.wav --model turbo. A Folder Action can fire a workflow whenever items land in a watched folder. Or a transcription app can own the queue itself — drop the folder, and it works through the files in sequence while you do something else.
What is the fastest way to bulk transcribe audio on a Mac without scripting?
An app with a built-in queue, because there is nothing to install, convert or maintain. The scripted routes are genuinely powerful, but each adds moving parts: whisper.cpp’s README states that its command-line example “currently runs only with 16-bit WAV files, so make sure to convert your input before running the tool”, which puts an ffmpeg conversion step in front of every file.
Does batch transcription work offline?
It depends on where the engine runs, not on whether the job is a batch. A local engine transcribes a queue with no network involved. A cloud API uploads every file in the batch, which is the moment a folder of client interviews leaves your machine. Weesper Transcribe runs on your Mac and uploads nothing, so a queue of 200 files is 200 files that never travelled.
How long does a batch of recordings take to transcribe?
There is no honest universal figure: it depends on your chip, the engine, the model size and the total audio duration rather than the file count. Published benchmarks measure accuracy, not throughput on your hardware. Time one representative file, then multiply by the hours in the folder. That is also the point of a queue — wall-clock time stops mattering when the job runs unattended.
Can I batch transcribe video files, not just audio?
Yes. Video carries an audio track, and a transcription tool reads that track the same way it reads a standalone recording. Weesper Transcribe accepts MP3, WAV, M4A, MP4, MOV and any other file macOS can read, so a folder mixing podcast episodes and screen recordings queues as one job.
Will batch processing reduce transcription accuracy?
No. The same engine and model produce the same transcript whether you feed files individually or leave a folder running overnight. What genuinely moves accuracy is the audio: NVIDIA’s model card reports 1.93% word error rate on LibriSpeech test-clean against 11.31% on AMI meeting recordings — a sixfold swing driven by the recording, not the software.
Conclusion
Batch transcription is a workflow problem wearing a technical costume. Every route reaches the same transcript; they differ in how much plumbing you own.
Scripts give total control and a pipeline to maintain. Folder Actions add a native trigger but still need an engine behind them. An app with a queue needs neither — the right trade when the recordings are the work and the tooling is not.
Whichever route you pick, preparation matters more than the tool: consistent names, one language per batch, one export target, and a test file before the long run.
Got a folder of recordings waiting? See how batch processing, exports and history search work in Weesper Transcribe, or get the app from the Mac App Store — free to download, with a one-time Pro upgrade and no subscription. Setup questions are answered in the support documentation.