A Python package for offline batch transcription with Cohere's 2B Arabic/English ASR model: optimised voice activity detection, multi-file GPU batching under bounded memory, subtitle output and optional word-level timestamps.
Overview
Transcribing one file is a solved problem. Transcribing a directory of hundreds without running out of GPU memory, and without spending most of the run on silence, is not.
The package handles individual files, multiple paths and nested directories with bounded-memory batching, and can return results directly or publish plain text, approximate segment-timed subtitles, or word-timed subtitles.
Feeding raw audio to the model spends a large share of the compute transcribing pauses, which is the main reason long-file throughput is bad.
Solution
Voice activity detection segments speech first, so only speech reaches the model. The batching is then built around those segments rather than around file boundaries.
Results
Directory-scale batch transcription with bounded memory and subtitle output.