Use cases · Call recordings

Call recording transcription API for QA and conversation intelligence

Speech Revolutions transcribes recorded calls with each speaker separated and every word timestamped, so QA scoring, talk-time ratios and compliance checks run on who actually said what. It is a batch API, built for recordings rather than live calls.

from speechrevolutions import SpeechRevolutions

client = SpeechRevolutions()
result = client.transcribe("call-8841.wav")

talk = {}
for w in result.words:
    talk[w.speaker] = talk.get(w.speaker, 0) + (w.end - w.start)
print(talk)  # seconds of speech per speaker

Where it goes wrong

Call analytics attribute everything to a side of the conversation: did the agent read the disclosure, who raised the price, how long did the customer talk. A turn credited to the wrong speaker changes the score.

Calls are often mono recordings, with both sides mixed into one channel at telephone quality, so the separation has to come from the audio itself.

What the API gives you

Speaker separation from mono audio
Diarization separates agent and customer even when both are on one channel.
Talk-time and timing
Per-word start and end times give talk ratio, interruptions and silence directly.
Key terms
custom_vocabulary takes product names, plan names and competitor names so they come through intact.
Volume
Submit in bulk and take results by webhook. The same pipeline handles about 60,000 hours of audio a month in production.
Data handling
Deleted within 30 minutes of the job finishing; never used for training.

Measured

Across the AMI, NotSoFar and DiPCo conversation datasets, Speech Revolutions measured 16.7% pooled diarization error rate, against 24.6% to 36.2% for the other four APIs we ran.

Full results and method: speaker diarization measured across five APIs and all benchmarks.

Pricing

$0.003 per audio minute, $0.18 an hour, billed by the second. Speaker labels, word timestamps and every output format are included. New accounts get $10 of credit with no card required. Pricing details.

In the docs

Other use cases