Communitygithub.com

kaylon-he/video-subtitle-skill

Füge automatisch generierte feste Untertitel zu einer Videodatei oder URL hinzu und gib eine MP4 mit Untertiteln sowie eine SRT-Datei aus. Verwende dies, wenn der Benutzer nach Untertiteln oder Bildunterschriften für ein Video fragt. Nicht verwenden, um nur vorhandene Untertitel zu bearbeiten.

Was ist video-subtitle-skill?

Dieses Skill ist ein automatisierter Workflow zum Hinzufügen von fest eingebrannten Untertiteln zu Videos. Es extrahiert die Audiospur eines Videos, transkribiert diese mit dem leistungsstarken Whisper-Modell zu SRT-Untertiteln, konvertiert die SRT dann in ASS-Untertitel (mit automatischem Zeilenumbruch für CJK-Schriftarten und halbtransparentem Hintergrund) und brennt die ASS-Untertitel schließlich mit ffmpeg (das libass unterstützt) in das Video ein. Das Ergebnis ist eine MP4-Datei mit fest eingebetteten Untertiteln und eine separate SRT-Datei. Das Skill ist besonders nützlich für Entwickler und Nutzer, die Videos schnell und zuverlässig mit Untertiteln versehen müssen, ohne manuelle Bearbeitung. Es unterstützt verschiedene Quellsprachen (Standard ist Chinesisch) und bietet Optionen wie reine SRT-Ausgabe und anpassbare Schriftgrößen. Wichtig ist die manuelle Überprüfung der Transkription auf Fehler (insbesondere bei Namen und Redewendungen) und die Überprüfung des Endprodukts auf vollständige und korrekte Anzeige der Untertitel.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add kaylon-he/video-subtitle-skill

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Video Untertitel

Automatisches Hinzufügen von Untertiteln zu Videos und Einbrennen in das Bild, Ausgabe von „MP4 mit Untertiteln + SRT“.

Pipeline

  1. Extraktion von 16k Mono-WAV (ffmpeg)
  2. whisper.cpp Transkription zu SRT (whisper-cli)
  3. SRT → ASS: Automatischer Zeilenumbruch basierend auf Bildbreite, CJK-Schriftart, zentrierter halbtransparenter Hintergrund unten
  4. Einbrennen der ASS mit ffmpeg (mit libass), Audiospur wird direkt kopiert

Verwendung

bash scripts/add_subtitles.sh input.mp4 -o output.mp4 -l zh
  • -l/--language Quellsprache, Standard zh, möglich auto
  • -f/--fontsize Schriftgröße, Standard 42
  • -s/--srt-only Nur SRT ausgeben, nicht einbrennen

Wichtige Hinweise

  • Transkription vor Auslieferung prüfen: Das Skript gibt die SRT auf dem Terminal aus. Personennamen, Ortsnamen und Redewendungen werden oft falsch erkannt (z. B.: „重阳姐“ → „重阳节“, „久久重扬“ → „九九重阳“). Bei Fehlern verwende -s, um eine neue Version zu erstellen, korrigiere die SRT und brenne sie dann ein.
  • Endprodukt überprüfen: Extrahiere 2–3 Frames aus dem finalen Video (-ss <Sekunden> -frames:v 1), um sicherzustellen, dass die Untertitel vollständig und nicht abgeschnitten oder über den Bildrand hinausragen.
  • Nicht die Homebrew-Version von ffmpeg verwenden: Diese Build-Version hat kein libass, die Filter subtitles/ass/drawtext fehlen alle. Das Skript wählt automatisch ffmpeg mit libass aus. Die Installationsanleitung findest du in der README.md.
  • Lange Sätze müssen umgebrochen werden: ASS verwendet WrapStyle: 2 (erkennt nur \N). srt_to_ass.py fügt automatisch \N basierend auf Bildbreite / Schriftgröße ein. Falls ein Satz dennoch überläuft, verkleinere die Schriftgröße mit -f.

Abhängigkeiten

ffmpeg (mit libass) + whisper-cli + ggml-Modell + python3. Fehlende Abhängigkeiten werden vom Skript mit klaren Fehlermeldungen angezeigt. Die vollständige Liste der Bibliotheken, Installationsbefehle und Fehlerbehebungshinweise findest du in README.md.

Verwandte Skills