You are building transcription for thousands of hour long sales calls per day. Lay out the audio front end: format and sample rate, how you chunk long recordings, how chunks are merged back, and how you keep throughput and accuracy acceptable.
Resample to 16 kHz mono, chunk at VAD silences with a few seconds of overlap, fan out chunks to parallel workers, merge with word-level timestamps, and gate the pipeline on WER measured against labeled call samples.
Imagine a giant restaurant where every cook can only handle small plates. A whole roast lamb (the hour-long call) has to be carved before anyone can cook it. You first wash and trim the meat so everyone is working with the same starting condition (resample to 16 kHz mono). Then you carve at natural joints rather than chopping randomly, and you leave a little meat overlapping each slice so nothing is lost at the cuts (silence-based chunking with overlap). Each cook handles one slice in parallel (workers), and a plater reassembles the meal in the right order, removing the overlap so nothing is duplicated. A taster checks a few plates each day to make sure nothing has gone wrong.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
A transcription pipeline for thousands of hour-long calls per day is not a single API call. It is a small distributed system with a normalization layer, a chunking strategy, a worker pool, a stitching step, and an evaluation harness that keeps the whole thing honest as models and codecs change.
This deep dive walks through each stage, the choices that matter, and the numbers you should be able to defend in an interview.
Stage 1: normalize the input
Telephony and meeting stacks produce audio in a zoo of formats: mu-law at 8 kHz from POTS lines, Opus at 16 to 24 kHz from WebRTC, AMR from mobile, MP3 from recordings. Speech encoders are mostly trained on 16 kHz mono PCM and behave best at that target.
Three normalization steps earn their place:
- Resample to 16 kHz mono. Downsampling 48 kHz to 16 kHz is lossless from the model's perspective; upsampling 8 kHz to 16 kHz cannot recover lost detail but at least matches the model's expected input shape.
- Avoid double-lossy. If the source is already an MP3, transcoding to a different lossy codec for storage compounds consonant loss. Keep a high-bitrate or lossless intermediate (FLAC, WAV) through the pipeline.
- Loudness normalize. Quiet speakers can dip below VAD thresholds. LUFS-based loudness normalization to roughly -16 to -23 LUFS pulls the dynamic range into the band the rest of the pipeline expects.
Situations where this technique stops working.
2–4 min · Everything important, quickly.
Real products, models, and research that use this idea.
- Gong and Chorus.ai both publish that production sales-call transcription resamples to 16 kHz mono and runs VAD before any model call
- Deepgram Nova-3 and AssemblyAI Universal both expose word-level timestamps explicitly so callers can stitch overlapping chunks
What an interviewer would ask next. Try answering before peeking at the approach.
QHow would you decide between self-hosting Whisper on GPU vs using a managed API like Deepgram or AssemblyAI?
Compare unit economics (cost per audio hour, GPU amortization vs API list price), accuracy on your labeled set, operational burden (queue, retry, scaling), and feature parity (diarization, word timestamps, custom vocabulary). Most teams under 5,000 hours per day pick managed; very large or compliance-sensitive workloads self-host.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Sending raw telephony audio (mu-law 8 kHz) straight to a model trained on wideband audio, then cutting it at fixed time marks with no overlap or diarization plan.
60 second bullets to scan on the way to the call.
Canonical sample rate and channel layout for modern speech encoders
Why double-pass lossy compression hurts transcription accuracy
Primary sources. Browse if you want the original framing.
Same topic, related formats. Practice these next.