All articles
The complete archive. Versions and measurements in older articles reflect their original environments; use maintained documentation for current setup.
When is a meeting transcript ready to use?
Text alone is not enough. Review key details, speaker turns and time coverage.
Choose the right checkpoint for Transformers
Checkpoint formats are not interchangeable. Choose the right artifact before connecting the API.
v1.4.14: Source packages and MOSS discovery
Turn a conversation into editable subtitles
Create subtitles with recording-local speaker labels, then select the passages you need.
v1.4.5: Python dependencies and runtimes
v1.4.3: VAD and speaker clustering
Generating local subtitles in Subtitle Edit
v1.4.0: Packaging and argument validation
FunClip v2.1.0: The first versioned release
v1.3.28: Realtime and subtitle fixes
v1.3.27: Language metadata and fallback
v1.3.26: API and runtime entry points
Notes on choosing a FunASR model
Finding the original audio with timestamps
What to check before migrating a speech API
Restoring punctuation in a transcript
How VAD identifies speech regions
Notes on migrating to self-hosted speech
Deployment choices for CPU speech recognition
Transcribing Japanese recordings
Getting started with Mandarin transcription
Chinese and Cantonese: an earlier comparison
Transcribing Cantonese recordings
Chinese speech recognition with llama.cpp
What can speech tell us beyond the words?
Transcribe a recording with Python
Add transcription to your own API
Start with a local request, then define authentication, output formats and operating responsibilities.
From a recording to subtitle files
Transcribing audio from the command line
Why can a long transcript miss the ending?
Check segmentation, generation limits and output coverage when a recording seems incomplete.