Quick Start
Prerequisites (Just Two Steps)
1 Install the .NET 10 SDK
https://dotnet.microsoft.com/download
2 Install FFmpeg
https://ffmpeg.org/download.html
Windows users: add the FFmpeg bin directory to your PATH (or drop ffmpeg.exe / ffprobe.exe into the project’s tools/ffmpeg folder).
Everything else (whisper.cpp, CrispASR, Demucs-rs, models…) is auto-downloaded on first use — zero manual installs. On the first run, go grab a coffee
Build the Project
dotnet build -c Release
Output lands in src/Centurion.Cli/bin/Release/net10.0/ — run it directly:
./src/Centurion.Cli/bin/Release/net10.0/Centurion.Cli
Your First Subtitles
# Transcribe build ASS in two steps
Centurion asr demo.mp4 --language en
Centurion build demo.centurion.json
That’s it. Whisper/CrispASR, models and tools download themselves on first use.
Typical Workflows (Copy-Paste Ready)
# Just make the subtitles
Centurion asr video.mp4 --language en --karaoke
# Script timed subtitles
Centurion from-script podcast.wav transcript.txt --language en
# Fix the timing of an existing subtitle file
Centurion correct subs.srt --audio episode.mp4 --strategy timeline-only
# Music video with vocal separation + speakers
Centurion asr concert.mp4 --vocal-separation --num-speakers 2
# Big GPU? Take off
Centurion asr long_lecture.wav --device cuda
# Keep yourself fresh
Centurion update --check
# Dub a translated subtitle track into speech
Centurion dub subtitles.ass -t zh --speaker-reference voices/
The Intermediate File
Every command reads & writes *.centurion.json — a rich, lossless middle format that carries config, per-stage sentences, word-level timestamps, speakers, translations and dub segments. Chain commands without losing information:
convert correct translate dub build