How to Transcribe Interviews Offline on Linux

How to Transcribe Interviews Offline on Linux

For offline interview transcription on Linux, noScribe is the tool to start with. It’s free, runs entirely on your machine, was built specifically for interviews, and labels who is speaking. For quick jobs, Buzz (on Flathub) and Vibe are simpler desktop apps that also run Whisper locally. For scripts and batches, whisper.cpp and WhisperX work from the command line. None of them upload your recordings.

Which Linux tool fits your interviews? #

ToolInstallSpeaker labelsBest for
noScribeRelease downloadYesResearch and journalism interviews that need careful attribution
BuzzFlatpak, Snap or AppImageYesQuick transcripts with TXT, SRT or VTT export
VibeRelease downloadYesBatches, video files, many export formats
whisper.cppBuild from sourceNoScripts, low-memory machines, CPU-only laptops
WhisperXpip install whisperxYesScripts with word timestamps and diarization

Step-by-step: transcribe an interview with noScribe #

noScribe’s developer describes it as a tool for “high quality transcripts of interviews for qualitative social research or journalistic use.” It combines Whisper (via faster-whisper) with pyannote for speaker detection, and it says everything runs locally on your computer.

  1. Download noScribe for Linux from its GitHub page and follow the install notes there.
  2. Open the interview file. Common audio formats and video work.
  3. Set the language instead of relying on auto-detect. noScribe supports around 60 languages.
  4. Turn on speaker detection and give it a rough number of speakers if asked.
  5. Choose quality over speed for anything you’ll quote. The precise setting is slower but makes fewer errors.
  6. Review in the built-in editor, which links the text to the audio so you can check any line by ear.

Expect it to be slow without a strong GPU. Start long interviews before lunch or overnight.

Step-by-step: quick transcripts with Buzz #

Buzz is easier to install and fine for interviews where you’ll add speaker names yourself. Per its project page, it’s available on Flathub:

flatpak install flathub io.github.chidiwilliams.Buzz

Open the recording, choose a Whisper model and the language, and transcribe. Buzz downloads the model the first time and works offline after that. It can identify speakers and exports TXT, SRT and VTT.

Vibe is the alternative if you have a batch of interviews or video recordings. It exports SRT, VTT, TXT, HTML, PDF, JSON and DOCX and supports speaker diarization.

Command line: whisper.cpp and WhisperX #

whisper.cpp runs Whisper efficiently on CPUs. Its command-line tool expects 16-bit WAV, so convert with FFmpeg, then transcribe. These commands follow its README:

ffmpeg -i interview.m4a -ar 16000 -ac 1 -c:a pcm_s16le interview.wav
cmake -B build && cmake --build build -j --config Release
sh ./models/download-ggml-model.sh medium
./build/bin/whisper-cli -m models/ggml-medium.bin -f interview.wav -otxt

WhisperX adds word-level timestamps and speaker diarization on top of Whisper. Install it with pip install whisperx. For diarization, create a free Hugging Face access token and accept the diarization model’s user agreement, as its README explains. GPU acceleration on Linux needs CUDA installed first.

Which model size should you use? #

Bigger Whisper models are more accurate and slower. For interviews you’ll quote from, use medium or one of the large models. Small is fine for background research or gist transcripts. With an NVIDIA GPU, large models become practical. On a CPU-only laptop, medium through whisper.cpp is a good compromise.

Run a five-minute test clip on two sizes before committing a two-hour interview to the slow one.

How to clean up an interview transcript #

  • Check every quote against the audio. Whisper-based models occasionally produce words nobody said, especially over silence or noise. Never publish a quote you haven’t heard.
  • Fix speaker labels. Diarization gets confused when people overlap or have similar voices.
  • Search and replace names. Once you know how a name was misheard, fix every instance at once.
  • Keep the audio next to the transcript. A folder per project, with each interview’s audio and text side by side, makes checking easy months later.
  • Delete what you don’t need, in line with your consent agreement or your newsroom’s or ethics board’s rules.

For a comparison of interview tools across platforms, see best private transcription apps for journalists.

Recording the interview in the first place #

Most interviews are recorded on a phone or a handheld recorder, then copied to Linux. Move files by USB cable or a peer-to-peer tool like Syncthing rather than a cloud drive, so the audio never touches a third-party server.

If you want a transcript before you’re back at your desk, Private Transcribe transcribes on iPhone and Android with Whisper and no upload. There’s no Linux version, but you can transcribe in the field and move just the text. It doesn’t label speakers, so noScribe on your laptop is still the better tool for multi-person interviews.

For podcast-style recordings, see private podcast transcription on Linux distros. For dictation and short notes, see how to transcribe voice notes privately on a Linux laptop.

Frequently asked questions #

Can I transcribe interviews in real time on Linux? #

The tools above work on recorded files, which is also the more accurate approach. For live speech into text, Speech Note (on Flathub as net.mkiol.SpeechNote) transcribes from the microphone offline. For interviews, record first and transcribe afterward.

Does noScribe work without a GPU? #

Yes, but slowly. It runs on the CPU, and high-accuracy transcription with speaker detection on a long interview can take hours on an ordinary laptop. A supported GPU speeds it up considerably.

Can these tools transcribe interviews in other languages? #

Yes. Whisper’s multilingual models cover 99+ languages, and noScribe supports around 60. Accuracy is best for widely spoken languages. Set the language explicitly for the best results.

How do I handle background noise in an interview recording? #

Use a larger model first, since they’re much more tolerant of noise. Light noise reduction in an audio editor can help, but heavy processing can make things worse. The biggest fix is next time: put the recorder closer to the person speaking.