Communitygithub.com

Remotion-FFmpeg-Fertigkeit

Erstelle Bewegtgrafiken auf echtem Filmmaterial mit Remotion, gesteuert durch Messungen von FFmpeg: animierte Untertitel aus SRT/VTT-Dateien, automatische Sprungschnitte mit Zoom und Audio-Peak-Animationen.

Was ist Remotion-FFmpeg-Fertigkeit?

Dieses Skill integriert FFmpeg-Messungen nahtlos in Remotion-Workflows, um programmatische Videoinhalte zu erstellen. Es unterstützt verschiedene Kompositionstypen wie animierte Untertitel, Sprungschnitte, audiovisuelle Pulseffekte, Karaoke-Untertitel und Highlight-Reels. Der Workflow folgt einem klaren Ablauf: Projektinitialisierung, Analyse des Quellmaterials (Dauer, FPS, Größe, Stille, Audiopeaks), Vorschau von Standbildern, Rendern mit automatischer Überprüfung und Auslieferung mit Plattformvorlagen (YouTube, Reels, TikTok etc.). Besondere Stärken sind die automatische Zeitanpassung von Untertiteln nach Sprungschnitten, die Unterstützung von CJK-Schriftarten ohne leere Quadrate und die Fähigkeit, Grafiken als separate transparente Ebene zu exportieren. Der Skill vermeidet es, kreative Entscheidungen zu treffen – er fragt nach Benutzereingaben für Titel und Namen und erfindet keine Daten ohne gemessene Grundlage. Voraussetzungen sind Node.js und der FFmpeg-Skill, alles läuft lokal ohne API-Schlüssel.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add kajisho5/remotion-ffmpeg-skill

In Ihrer bevorzugten KI fragen

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

Dokumentation

remotion-ffmpeg-skill

FFmpeg-Skill misst → Remotion zeichnet → FFmpeg-Skill prüft und liefert aus. Skripte befinden sich im Ordner scripts/ neben dieser Datei; führen Sie sie mit python3 <skill-verzeichnis>/scripts/<name>.py aus. --help bei einem Skript zeigt die vollständige Liste der Flags; references/timeline.md enthält das Timeline-Format und die Optionen, die jede Komposition benötigt.

Dieses Skill ist abhängig von FFmpeg-Skill (neben diesem Skill in ~/.claude/skills/ffmpeg-skill oder über FFMPEG_SKILL_DIR). Es führt selbst nie einen rohen ffmpeg/ffprobe-Befehl aus: Messen, Prüfen und Ausliefern erfolgen über die Skripte des FFmpeg-Skills, sodass deren Garantien übernommen werden.

Gemeinsame Flags (jedes Skript): --json (ein JSON-Objekt auf stdout; bevorzugt), --dry-run (planen, nichts schreiben), --overwrite (der einzige Weg, eine vorhandene Ausgabe zu ersetzen), --timeout SEKUNDEN.

Arbeitsablauf (in dieser Reihenfolge)

  1. Projekt einmalig. Kein Remotion-Projekt vorhanden: init.py ./motion --install (kopiert die Vorlage, führt npm install aus; der Remotion-Headless-Browser wird beim ersten Rendern heruntergeladen). Ein vorhandenes Projekt aus diesem Skill: wiederverwenden.
  2. Messen. analyze.py QUELLE [--captions DATEI.srt] [--beats] -o QUELLE.timeline.json. Lesen Sie die Zusammenfassung und die warnings: Eine VFR- oder HDR-Quelle muss mit dem FFmpeg-Skill vor dem Zeichnen korrigiert werden (color.py --to-sdr, ein Export mit konstanter Bildrate) – Remotion rendert SDR auf einem festen Bildraster. Timeline-Zahlen niemals von Hand schreiben oder bearbeiten; stattdessen neu messen (--threshold, --min-silence für einen leisen Raum).
  3. Standbilder in der Vorschau anzeigen. still.py --project ./motion --comp NAME --timeline TL --at 1.5 --at 6 und die PNGs ansehen: Untertitelplatzierung, Punch-in, Farben. Günstig; vor einem vollständigen Rendern durchführen.
  4. Rendern. render.py --project ./motion --comp NAME --timeline TL [--options look.json] -o OUT.mp4 (--fast = Vorschau in halber Größe, --frames 0-89 = ein Bereich, --codec prores -o master.mov = ein Master). Es überprüft die Ausgabe anhand der Timeline (Bildanzahl, fps, Größe, Audio) und beendet sich mit einem Fehler bei Nichtübereinstimmung.
    • Form: In der Form zeichnen, in der ausgeliefert wird. --aspect 9:16 für Reels / TikTok / Shorts (auch 1:1, 4:5, 16:9); --fit blur (Standard, wenn sich die Form ändert: enthalten über einer unscharfen Kopie), contain (Balken) oder cover (Beschnitt – Motiv zuerst im Standbild prüfen). Niemals 16:9 rendern und von einer 9:16-Vorlage beschneiden lassen: Untertitel verlieren ihre Ränder. pipeline.py --platform wählt das Seitenverhältnis aus der Vorlage des FFmpeg-Skills für Sie aus.
    • Schriftarten: Japanische / chinesische / koreanische Untertitel erhalten automatisch die CJK-Schriftart, die der FFmpeg-Skill auf dem Rechner findet (in das Projekt eingebunden, also keine leeren Quadrate); --font-file F.ttf verwendet eine bestimmte Schriftart; die Berichtszeile font: gibt an, welche verwendet wurde oder dass keine gefunden wurde.
    • Ebene für Schnittprogramm: --overlay --keep-graphics (Captioned / PeakPulse, Quellformat) zeichnet die Grafiken allein als transparentes ProRes 4444 .graphics.mov und setzt sie mit dem FFmpeg-Skill overlay.py über die unbearbeitete Quelle; das .mov an jemanden übergeben, der in Premiere / Resolve / Final Cut nachbearbeitet. Es ist nicht schneller als ein normales Rendern.
  5. Ausliefern. deliver.py OUT.mp4 --platform youtube|reels|tiktok|shorts|x|... führt die Auslieferungsvorlage des FFmpeg-Skills sowie dessen check.py-Tabelle aus. Formatzeilen sind sicher zu korrigieren; Bewertungszeilen (Dauer, Seitenverhältnis) ändern den Inhalt – nachfragen. WARNs erwähnen, nicht verfolgen. Kein Ziel angegeben: diesen Schritt überspringen und dies mitteilen.
  6. Prüfen. Nicht abgeschlossen, bis die Antwort das Kontaktblatt benennt, das render.py geschrieben hat (Look: PFAD) und sagt, was es zeigt. Mechanisch (prüfen und berichten): Text ist dort, wo er verlangt wurde; Stichworte erscheinen zu ihren Zeiten; nichts wird vom Bildrand abgeschnitten. Bewertung (sagen, was Sie sehen, der Benutzer entscheidet): Text über einem Gesicht; ein Sprung, der schlecht sitzt. Keine Bildansicht: Look: PFAD (Pixel nicht geprüft) – niemals behaupten, Sie hätten gesehen. Kein Kontaktblatt (look_error im Ergebnis, z.B. ein FFmpeg ohne drawtext): stattdessen still.py-Bilder ansehen und die vom Fehler genannte Lösung weitergeben.

Optionsdateien werden vor dem Rendern geprüft: ein unbekannter Schlüssel oder ein falscher Typ wird abgelehnt (kind: input), anstatt stillschweigend nichts zu tun.

MCP: mcp/server.py stellt dieselben Werkzeuge bereit (Schemata aus scripts/_contract.py, contract --json gibt sie aus).

Alles in einem Durchgang: pipeline.py QUELLE --project ./motion --comp NAME [--captions F] [--platform P] führt 2→4→5 mit denselben Prüfungen aus und stoppt beim ersten fehlgeschlagenen Schritt.

Anfrage → Skript / Komposition

AnfrageAusführen
„animierte Untertitel auf diesem Video

Verwandte Skills