Communitygithub.com

skulitom/cutbolt-plugin

Erstelle Untertitel aus quellgebundenen Transkripten für einen bearbeiteten Cutbolt-Timeline und füge bearbeitbare Szenen-Clips ohne Zwischenfilm ein.

Was ist cutbolt-plugin?

Dieses Skill ermöglicht es, Untertitel aus einem Transkriptdokument (transcript.json) direkt auf die aktuelle Schnittversion in Cutbolt zu übertragen. Es arbeitet mit einer Projekt-ID und Revision, führt eine Texterkennung durch, rendert die Untertitel in ein Layouformat und fügt sie als bearbeitbare Szenen-Rezepte in die Timeline ein – ohne einen separaten Untertitel-Zwischenfilm zu erzeugen. Das Skill unterstützt den gesamten Workflow von der Erstellung des Untertitelentwurfs über die Wartezeit auf den Rendervorgang bis zur endgültigen Anwendung der Operationen auf die Timeline. Es ist für Windows und Linux mit externem FFmpeg/ffprobe konzipiert, benötigt jedoch für die Spracherkennung eine separate lokale Laufzeitumgebung und ein Modell. Das Plugin bündelt keine Engines, Schriftarten, Modelle oder Medienwerkzeuge, erfordert daher eine eigene Konfiguration und stellt sicher, dass Textüberläufe abgelehnt werden, sodass keine abgeschnittenen Texte unbemerkt bleiben.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/skulitom/cutbolt-plugin/tree/HEAD/skills/captions

In Ihrer bevorzugten KI fragen

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

Dokumentation

Beschriftung des aktuellen Schnitts

Verwende ein gespeichertes Projekt mit platzierten Spuren und einem Transkriptdokument unter transcript.json. $PROJECT_ID und $REVISION beziehen sich auf den aktuellen Schnitt. Entwurf nach Timing-Änderungen. Ersetze $PLACEHOLDERS durch tatsächliche Werte; sende aufgelistete cutbolt_*-Aufrufe ohne Befehl, oder verwende cutbolt_run mit Befehl/Argumenten. Halte blockierendes Rendering in job.start ein.

{"command":"captions.draft","project":{"project_id":"$PROJECT_ID"},"transcripts":[{"file":"transcript.json"}]}

Überprüfe Cue-Text und Timing im zurückgegebenen Dokument und behalte es als $CAPTION_DOCUMENT. Korrigiere Erkennungsfehler vor dem Rendern. $FONT ist ein Schriftart-Identitäts-/Pfadobjekt (z. B. {"path":"font.ttf"}) oder ein eindeutiger installierter Name aus fonts.find. $FONT_SIZE, $LINE_HEIGHT und $CAPTION_RECT sind Pixel-Layout-Werte, die zum Projekt passen. Wähle genügend Platz für die tatsächlichen Cues. Überlauf wird abgelehnt, sodass abgeschnittener Text nicht stillschweigend durchgelassen wird.

{"command":"job.start","request_id":"caption-render","run":"captions.render","arguments":{"document":"$CAPTION_DOCUMENT","project":{"project_id":"$PROJECT_ID"},"layouts":{"default":{"fonts":["$FONT"],"size":"$FONT_SIZE","rect":"$CAPTION_RECT","line_height":"$LINE_HEIGHT","letter_spacing":0,"wrap":"none","overflow":"reject"}},"output":"caption-edits.json","mode":"generated","track_id":"captions","asset_id":"caption"}}

$JOB_ID ist das zurückgegebene Ticket.

{"command":"job.wait","job_id":"$JOB_ID","timeout_seconds":120}

Fahre nur fort, wenn der Status „completed“ ist. Behalte result.operations als $CAPTION_OPERATIONS (einen Dateiverweis) und result.expected_revision als $CAPTION_REVISION. Wende diesen Vorschlag bei der aufgezeichneten Revision an. Der Befehl erstellt die Untertitelspur, wenn sie fehlt. Falls sie bereits überlappende Untertitel enthält, entferne explizit die vorgesehenen alten Clips und bereite erneut gegen den neuen Head vor. Dupliziere keine Untertitel und überschreibe keine nicht verwandten Grafiken.

{"command":"session.apply","project_id":"$PROJECT_ID","expected_revision":"$CAPTION_REVISION","request_id":"attach-captions","operations":"$CAPTION_OPERATIONS"}

Behalte die neue Revision. Exportiere und überprüfe die tatsächlichen Untertitel zu repräsentativen Zeitpunkten, einschließlich des ersten/letzten Cues. Eine Timing-Änderung nach diesem Schritt erfordert neu generierte Untertitel. Die gespeicherten Clips behalten bearbeitbare Szenen-Rezepte und rendern direkt mit dem Filmmaterial; es wird kein Zwischenuntertitel-Film kompiliert. Behalte das Untertitel-Dokument für spätere Text-/Timing-Änderungen.

Für eine bereitgestellte lokale Schriftart verwende ein Pfadobjekt; Zeichenketten benennen installierte Schriftfamilien. Fehlende oder mehrdeutige installierte Schriftarten benötigen eine verwendbare Identität von fonts.find. Bei Textüberlauf passe das Box-/Schrift-/Cue-Layout an und verwende einen neuen Ausgabedateinamen. Bei einer veralteten Revision prüfe, ob sich das Timeline-Timing vor dem Anhängen geändert hat. Verwende die Anforderungs-ID einer unsicheren Bearbeitung erneut und überprüfe session.receipt; dass job.wait ein Ticket zurückgibt, ist kein Beleg für einen abgeschlossenen Render.

Dieser Workflow läuft unter Windows und Linux mit externem FFmpeg/ffprobe. Spracherkennung, falls erforderlich, benötigt eine separat konfigurierte lokale Laufzeitumgebung und ein Modell. Aufnahme und Hardware-Dekodierung haben kein Linux-Backend. Das Plugin bündelt keine Engine, Schriftarten, Modelle oder Medienwerkzeuge.

Verwandte Skills