video-subtitles

v2026.09.24

Generate SRT subtitles from video/audio with translation support. Transcribes Hebrew (ivrit.ai) and English (whisper), translates between languages, burns subtitles into video. Use for creating captions, transcripts, or hardcoded subtitles for WhatsApp/social media.

GitHub
Install command
npx skhub add sundial-org/video-subtitles
Markdown
SKILL.md

Video Subtitles

Generate movie-style subtitles from video or audio files. Supports transcription, translation, and burning subtitles directly into video.

Features

  • Hebrew: ivrit.ai fine-tuned model (best Hebrew transcription)
  • English: OpenAI Whisper large-v3
  • Auto-detect: Automatically detects language and selects best model
  • Translation: Translate Hebrew → English
  • Burn-in: Hardcode subtitles into video (visible everywhere, including WhatsApp)
  • Movie-style: Natural subtitle breaks (42 chars/line, 1-7s duration)

Quick Start

# Plain transcript
./scripts/generate_srt.py video.mp4

# Generate SRT file
./scripts/generate_srt.py video.mp4 --srt

# Burn subtitles into video (always visible)
./scripts/generate_srt.py video.mp4 --srt --burn

# Translate to English + burn in
./scripts/generate_srt.py video.mp4 --srt --burn --translate en

# Force language
./scripts/generate_srt.py video.mp4 --lang he    # Hebrew
./scripts/generate_srt.py video.mp4 --lang en    # English

Options

FlagDescription
--srtGenerate SRT subtitle file
--burnBurn subtitles into video (hardcoded, always visible)
--embedEmbed soft subtitles (toggle in player)
--translate enTranslate to English
--lang he/enForce input language
-o FILECustom output path

Output

  • Default: Plain text transcript to stdout
  • With --srt: Creates video.srt alongside input
  • With --burn: Creates video_subtitled.mp4 with hardcoded subs

Requirements

  • uv: Python package manager (auto-installs dependencies)
  • ffmpeg-full: For burning subtitles (brew install ffmpeg-full)
  • Models: ~3GB each, auto-downloaded on first use

Subtitle Style

  • Font size 12, white text with black outline
  • Bottom-aligned, movie-style positioning
  • Max 42 chars/line, 2 lines max
  • Natural breaks at punctuation and pauses
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Not specified

Source path

skills/video-subtitles

Default branch

main

Latest commit

b80cde2

Tree SHA

fc3a971