Communitygithub.com

SergeoDev01/talking-head-reels

Verwandle eine Talking-Head-Aufnahme in ein fertiges vertikales 9:16 Instagram Reel / TikTok / YouTube Short im kühnen redaktionellen Stil – mit gestrafften Pausen, kinetischer Anton+Didot-Typografie, einer Rot/Weiß/Schwarz-Weiß-Palette, B-Roll-Einblendungen, die das Gesagte illustrieren, Split-Screens mit dem Sprecher, Kamerabewegungs-Übergängen, Filmkorn und auf -14 LUFS gemasterter Stimme. Alles wird per Code (Python + ffmpeg/libass) gerendert – keine After Effects oder andere Bearbeitungs-Apps nötig; das Filmmaterial wird kostenlos beschafft (eigenes Material, freie Stock- und Archivinhalte über die Pixabay/thesvg MCP-Connectors und Wikimedia Commons – bezahlte KI-Generierung nur auf ausdrücklichen Wunsch). Verwende diesen Skill immer dann, wenn…

Was ist talking-head-reels?

Dieser Skill verwandelt eine einzelne Aufnahme einer Person, die zur Kamera spricht, in ein fertiges, vertikales Instagram Reel, TikTok oder YouTube Short im redaktionellen, schnellen Stil. Der Sprecher bildet das Rückgrat des Videos, und alle 2–4 Sekunden wechselt das Bild – ein Zoom, ein großes Wort, eine B-Roll-Einblendung, ein Split-Screen – immer angetrieben durch das, was in diesem Moment gesagt wird. Die Mechanik ist vollständig per Code gesteuert (Python + ffmpeg/libass): Pausen werden geschnitten, die Stimme gemastert, und ein Renderer zeichnet jedes Bild direkt aus einer Edit Decision List (EDL). Der Benutzer übernimmt die redaktionelle Arbeit: Verstehen des Talks, Entscheiden, wie jeder Beat aussehen soll, Finden oder Generieren passenden Filmmaterials, Schreiben der EDL, Überprüfen von Standbildern und Durchführen der Überarbeitungsrunden mit dem Benutzer. Dies funktioniert sowohl auf macOS (natives Rendering) als auch auf Windows 10/11 (mit entsprechenden Schriftarten-Anpassungen) und verwendet ausschließlich lizenzrechtlich unbedenkliche Quellen – eigenes Material, kostenlose Stock-Archive (Pixabay MCP, Wikimedia Commons) und nur auf ausdrücklichen Wunsch KI-generierte Aufnahmen (Higgsfield/Seedance).

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SergeoDev01/talking-head-reels/tree/HEAD

In Ihrer bevorzugten KI fragen

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

Dokumentation

Talking-Head Reels

Du verwandelst eine Aufnahme einer Person, die zur Kamera spricht, in ein fertiges vertikales Reel (MP4). Der Look ist redaktionell und schnell: Der Sprecher ist das Rückgrat des Videos, und alle 2–4 Sekunden wechselt das Bild – ein Zoom, ein großes Wort, eine B-Roll-Einblendung, ein Split-Screen – immer angetrieben durch das, was in diesem Moment gesagt wird.

Die Mechanik ist skriptgesteuert: Schneiden von Pausen, Mastern der Stimme, Mattes und einem Renderer, der jedes Bild direkt aus einer Edit Decision List (EDL) zeichnet. Deine Aufgabe ist der redaktionelle Teil: Den Talk verstehen, entscheiden, wie jeder Beat aussehen soll, passendes Filmmaterial finden oder generieren, die EDL schreiben, Standbilder prüfen und die Überarbeitungsrunden mit dem Benutzer durchführen.

Anforderungen

macOS (natives Renderziel) – Python 3.9+ mit numpy und faster-whisper, ffmpeg mit libass (Homebrew ffmpeg oder imageio-ffmpeg). Optional – Xcode-Befehlszeilentools (Apple Vision Mattes).

Windows 10/11 Render-Box: Die Render-Engine ist plattformneutral. Python 3.9+ mit numpy und faster-whisper sowie ein ffmpeg-Build, der libass mitliefert (gyan.dev "vollständiger" Build), reichen aus – verwende dann die kostenlosen Ersatzschriftarten, die in assets/fonts/win/ gebündelt sind (Playfair Display 400/700/italic + Inter Medium, OFL-lizenziert):

  1. Setze einmal die Benutzer-Umgebungsvariable – REEL_FONT_FILES = die vier .ttf-Pfade, durch Semikolon getrennt. Die Engine greift sie über ihren eigenen REEL_FONT_FILES-Hook (textass.py) ab und extrahiert die Schriftschnitte selbst in den libass-Ordner.
  2. Füge in jede EDL die integrierte EDL-Schriftarten-Überschreibung ein: "fonts": {"anton": "Anton-Regular", "serif": "PlayfairDisplay-Bold", "didot": "PlayfairDisplay-Regular", "sub": "Inter-Medium"} (Die Standardzuordnung in reel_plan.py bleibt unberührt – macOS-EDLs benötigen keine Überschreibung).
  3. Apple Vision-Ausschnittmattes existieren unter Windows nicht: Überspringe diese Beats. python scripts/check_setup.py meldet Windows-kompatible Ergebnisse.

Keine Credits erforderlich: B-Roll stammt aus dem Material des Benutzers und kostenlosen Bibliotheken (Pixabay / thesvg MCP-Connectors, Wikimedia Commons); der Zusatz zur bezahlten Generierung (Higgsfield / Seedance) ist nur für explizite Anfragen.

Was du lieferst

  • PROJECT/render/<name>_vN.mp4 – 1080x1920, H.264, AAC 320 kbps, Stimme bei etwa -14 LUFS.
  • PROJECT/edl.json (und edl_vN.json-Kopien pro Runde) – die gesamte Bearbeitung als Daten; ein erneutes Rendern ergibt immer dasselbe Video.
  • QA-Standbilder zur Überprüfung (PROJECT/qa/.../sheet.jpg).

Schritt 0 – Einrichtung und Aufnahme

Führe python3 scripts/check_setup.py aus (die Pfade in dieser Datei sind relativ zum Skill-Ordner) und behebe, was gemeldet wird. Verwende für alle Skripte dasselbe Python; ein venv mit numpy faster-whisper imageio-ffmpeg ist der einfachste Weg. Das ffmpeg muss libass enthalten (der gesamte Text wird damit gezeichnet) – die Überprüfung zeigt, welche Binärdatei gefunden wurde.

Stelle dann sicher, dass du Folgendes weißt (frage nur nach dem, was fehlt – eine kurze Nachricht):

  1. Die Aufnahme (Pfad). Idealerweise 4K horizontal oder 1080x1920 vertikal, der Sprecher ungefähr zentriert.
  2. Die Sprache und das Skript, falls vorhanden (hilft, Füllwörter und Fehltranskriptionen zu erkennen).
  3. Die Farbkorrektur: bereits korrigierte Datei, ein .cube LUT oder "Kamerafarbe verwenden".
  4. Der Call-to-Action am Ende (z.B. "Kommentiere WORT und ich schicke dir den Link").
  5. Woher B-Roll kommen kann: eigenes Filmmaterial (Standard), kostenlose Stock- und Archivinhalte (Pixabay MCP, Wikimedia Commons), Logos/Icons über den thesvg MCP (fällt auf Commons PNG-Renderings zurück). Frage, welche Rechte der Benutzer hat. Bezahlte KI-Generierung (Higgsfield / Seedance) nur, wenn explizit gewünscht.
  6. Wo der Projektordner abgelegt werden soll (Standard: neben dem Video, <name>_reel/).

Schritt 1 – Vorbereitung und Analyse (skriptgesteuert)

python3 scripts/prepare_project.py VIDEO.mov [--graded GRADED.mov | --lut grade.cube] [--project DIR]
python3 scripts/transcribe.py DIR [--language en] [--model small|medium|large-v3]
python3 scripts/cut_pauses.py DIR [--remove 2.40-2.72 ...]
python3 scripts/master_audio.py DIR
python3 scripts/presenter_mattes.py DIR        # benötigt swiftc; nur überspringen, wenn nicht verfügbar

cut_pauses.py gibt jedes beibehaltene Segment mit seinen Wörtern aus. Lies es gegen das Transkript: Entferne Fehlstarts, Wiederholungen und Füllwörter mit --remove start-end (Quellsekunden) und führe es erneut aus. Berichte dem Benutzer, wie viel entfernt wurde (z.B. "81,5 s -> 73,4 s"). Alle weiteren Schritte verwenden die Programm-Zeitleiste (analysis/program_words.json).

Schritt 2 – Planung des Schnitts (dein Urteil)

Lies references/style-guide.md (der Look und die Regeln) und references/edit-planning.md (wie man einen Talk in Beats umwandelt) und schreibe dann ein Beat-Blatt: eine Zeile pro Beat mit Programmzeiten, den gesprochenen Wörtern, dem Bildschirminhalt (Sprecher weit/eng, Insert-Art, Layout), der Textbehandlung und der Filmidee. Zeige es dem Benutzer, bevor du Filmmaterial beschaffst – Änderungen sind jetzt günstig und später teuer.

Schritt 3 – Filmmaterial

Folge references/broll-sourcing.md: Wonach suchen, woher es kommen kann, Lizenzierung und die getesteten kostenlosen Beschaffungsrezepte (Pixabay MCP-Suchen + URL-Überprüfung, Wikimedia Commons API + curl UA/Wiederholungen + SHA-1-Prüfungen, thesvg MCP für Logos, ffmpeg-Transkodierungen). Bezahlte Generierung (Seedance über Higgsfield) findet sich im Anhang – nur wenn der Benutzer explizit nach KI-generierten Aufnahmen fragt und die Kosten genehmigt. Lege alles in PROJECT/broll/ und Logos in PROJECT/logos/. Überprüfe Kandidaten mit scripts/clip_sheet.py. Wenn der Benutzer bereits Clips oder Inserts hat, verwende sie – beschaffe nichts neu, was bereits existiert.

Schritt 4 – EDL und Validierung

Schreibe PROJECT/edl.json gemäß references/edl-schema.md (ein vollständiges Arbeitsbeispiel – das Reel, auf dem dieser Stil aufbaut – befindet sich in assets/examples/example_edl.json). Dann:

python3 scripts/validate_edl.py DIR/edl.json

Behebe jeden Fehler; lies jede Warnung und behebe sie oder akzeptiere sie bewusst.

Schritt 5 – Standbilder, dann das Rendern

python3 scripts/render_reel.py DIR/edl.json --stills 0.6 2.4 4.8 ... --out-dir DIR/qa/stills_v1
python3 scripts/render_reel.py DIR/edl.json --out DIR/render/<name>_v1.mp4

Standbilder dauern Sekunden: Wähle einen Moment innerhalb jedes Beats plus die Mitte jedes Übergangs und überprüfe das Kontaktblatt anhand der Checkliste in references/style-guide.md (keine leeren Ränder, Wörter lesbar und innerhalb des Rahmens, nichts über den Augen, Text im Zentrums-Stapel, Farbbehandlung korrekt). Korrigiere die EDL und überprüfe erneut, bis alles sauber ist. Dann rendere das vollständige Reel (einige Minuten auf einem aktuellen Mac; siehe references/renderer.md) und gib dem Benutzer den Pfad sowie die vom Renderer ausgegebenen Zahlen (Größe, fps, Dauer, Lautstärke).

Schritt 6 – Überarbeitungsrunden (wie der Benutzer arbeiten möchte)

  • Der Benutzer sendet Anmerkungen einzeln, oft Screenshots mit ein paar Worten. Nummeriere sie (1, 2, 3…), bestätige kurz und ändere nichts, bis sie sagen, dass sie fertig sind ("Start", "Los", "das ist alles"). Wende dann alle in einem Durchgang an.
  • Jede Runde ist eine neue Version: Kopiere edl.json vor dem Bearbeiten nach edl_vN.json, rendere nach <name>_vN.mp4. Überschreibe niemals eine Render- oder EDL-Version, die der Benutzer bereits gesehen hat.
  • Überprüfe die geänderten Momente zuerst mit --stills, rendere dann das vollständige Video einmal.
  • Behalte denselben Stil über die Runden hinweg bei; wenn eine Anmerkung eine allgemeine Regel impliziert ("keine leeren Ränder", "größere Untertitel"), wende sie überall an, nicht nur im Screenshot.
  • Wenn der Benutzer anderes Filmmaterial für eine Aufnahme wünscht, ändere diesen Clip in der EDL (siehe "Clips austauschen" in references/edl-schema.md) – nichts anderes verschiebt sich.

Andere Werkzeuge

  • scripts/render_reel.py --stills ... – beliebige Momente als PNGs plus ein Kontaktblatt.
  • scripts/clip_sheet.py – Einzelbilder und Hard-Cut-Zeiten von Kandidatenclips.
  • references/renderer.md – wie der Renderer funktioniert, Geschwindigkeit, Schriftarten, Fehlerbehebung.

Grundregeln

  • Filmmaterial: Verwende nur Material, an dem der Benutzer die Rechte hat – eigenes, lizenziertes oder frei lizenziertes Stockmaterial oder für sie generierte Clips. Generierte Personen dürfen nicht wie echte Schauspieler oder Prominente aussehen, und keine berühmten Figuren, Kostüme, Logos oder Filmszenen dürfen nachgestellt werden.
  • Jedes Rendern ist eine neue Datei. Überschreibe niemals etwas, das der Benutzer bereits überprüft hat.
  • Arbeite in den Projektdateien auf Englisch; sprich mit dem Benutzer in seiner Sprache.

Verwandte Skills