Skip to content
christopher dedman rollet

Open source

Capski

A Rust CLI that turns audio or video into karaoke-style clips with word-timed burned-in subtitles.

Capski is a command-line tool written in Rust that transforms audio or video files into stylised karaoke-style videos with real-time subtitles. It handles transcription, translation, and subtitle rendering with custom styling, which makes it useful for content creators and educators.

Key features

  • Converts WAV, MP3, and MP4 into karaoke-style video.
  • Whisper-based transcription with real-time word timing.
  • Optional English translation between several languages.
  • Subtitle styling driven by a JSON config.
  • Burns subtitles into the video with FFmpeg.
  • An ergonomic CLI with useful flags.

What I did

  • Designed the CLI and the modular Rust architecture.
  • Integrated Whisper and FFmpeg.
  • Implemented Advanced SubStation Alpha (ASS) subtitle formatting and rendering.
  • Built translation and real-time word highlighting.
  • Wrote the engineering requirements documentation.

Challenges

  • Learning Rust while building something non-trivial in it.
  • Handling real-time, word-level timestamping.
  • Syncing and overlaying subtitles correctly through FFmpeg.
  • Keeping the CLI intuitive for non-technical users.

Demo

The project is open source under the GNU General Public License v3.0.