Vlog-Bearbeitung mit HyperFrames
Verwandle ein rohes Talking-Head-Video (mit einigen Füllaufnahmen) in ein präzises, optisch ansprechendes 16:9-Video mit professionellen Texten.
Ursprüngliche Philosophie / Quellen
- Walter Murch, Rule of Six (In the Blink of an Eye): Emotion 51% > Geschichte 23% > Rhythmus 10% > Blickführung > 2D > 3D. Wähle Szenen nach Emotion und Handlungsstrang aus, behebe Bildfehler später.
- Casey Neistat: Einleitung → Kontext → Inhalt → Schluss; Jump Cuts mit Absicht; viele Füllaufnahmen.
- Talking-Head: Sprache ist das Rückgrat (L-Cut), Füllaufnahmen überlagern, Punch-In verdeckt Jump Cuts.
- Erprobter Workflow: Ein 11:22 min Vlog vom Auto → 5:22 min, 23 Segmente, 29 Textblöcke (siehe
references/vi-du-plan.jsonfür ein Beispiel).
Wann verwenden / NICHT verwenden
- Verwenden: Lange Videos mit einer sprechenden Person (Vlog, Erfahrungsbericht, aufgezeichneter Livestream, Fahrzeugaufnahmen), die gekürzt, mit Füllmaterial und Texten versehen werden sollen, horizontales 16:9-Format.
- Nicht verwenden: Vertikale 9:16 Shorts (TikTok-Stil) mit Echtzeit-Untertiteln; KI-Avatar-/Overlay-Videos; nur Untertitel ohne Schnitt (verwende
/embedded-captionsvon HyperFrames).
Voraussetzungen
Installation gemäß HUONG-DAN-CAI-DAT.md, dann node <skill>/scripts/kiem-tra-may.mjs ausführen – alle ✓ müssen erscheinen.
ffmpeg/ffprobe, Node ≥ 18,npx hyperframes(getestet mit 0.8.168–0.8.169).whisper-cli(whisper.cpp) + Modell~/.whisper-models/ggml-large-v3-turbo.bin(mit den VariablenWHISPER_BIN,WHISPER_MODELänderbar).- Mac: Verwendet VideoToolbox für schnellen Schnitt (~2x Echtzeit bei 2.7K HEVC 10-Bit); Windows/Linux wechselt automatisch zu libx264 (langsamer).
- Freier Festplattenspeicher ≥ 0,6 GB pro Minute Ausgabevideo + 3 GB. Erster Render lädt chrome-headless-shell (~150 MB).
- Schriftart Be Vietnam Pro ist in
assets/fonts/enthalten (SIL OFL-Lizenz, kein Internet erforderlich).
Ausführungsworkflow
S=<Skill-Verzeichnis>/scripts (normalerweise .claude/skills/hmhshare-mkt-bien-tap-vlog-hyperframes/scripts)
W=<Arbeitsverzeichnis>, z.B. ~/vlog-lam-viec/<slug>. Schwere Mediendateien hier ablegen, NICHT in Cloud-Synchronisationsordnern (Google Drive, OneDrive, Dropbox…), da dies langsam ist und zu Fehlern führt.
Schritt 1 – Vorbereitung (maschinell, ~1–3 Minuten).
node $S/01-chuan-bi.mjs --work $W --main "<Hauptvideo>" --broll "<Füllaufnahme1>,<Füllaufnahme2>,..."
Ergebnis: probe.json, contact.jpg, loi-thoai.txt (Wort-für-Wort-Zeitstempel), main_clean.wav, Proxys der Füllaufnahmen hfproj/media/bNN*.mp4 + broll.json. Bei erneuter Ausführung werden bereits vorhandene Teile übersprungen (--force für Wiederholung).
Schritt 2 – KI-Editierung (lies references/chon-doan-bien-tap.md genau).
Betrachte contact.jpg (Position des Sprechers → tam_zoom, Textplatzierung), lies loi-thoai.txt vollständig, lege Zielgruppe + Botschaft fest (frage den Benutzer, falls unklar), und schreibe den Abschnitt doan in $W/plan.json gemäß references/plan-json.md. Schnelle Gesamtlängen-Schätzung:
node $S/02-cat-doan.mjs --work $W --main "<Hauptvideo>" --chi-tinh # gibt nur ban-cat.txt aus, schneidet nicht
→ Menschlicher Prüfpunkt: Wenn der Benutzer eine Vorschau wünscht, sende die Tabelle ban-cat.txt und stoppe. Standard: fahre fort, füge die Schnitttabelle in den Abschlussbericht ein.
Schritt 3 – Schnitt + Audiofilter + Prüfung der Schnittstellen (maschinell).
node $S/02-cat-doan.mjs --work $W --main "<Hauptvideo>"
Ergebnis: hfproj/media/main_cut.mp4/.wav, segs.json, kiem-tra-noi.json. Bei Warnungen zu fehlenden Wörtern: vergleiche mit cut-words.json (Whisper-Fehler); bei echten Fehlern füge lui_dau/them_cuoi hinzu und wiederhole den Schritt.
Schritt 4 – KI schreibt Texte + erstellt Composition.
Lies ban-cat.txt, schreibe die Abschnitte chu (orientiert an doan + sau) und canh_tram (Standard: {"nhip":20}) in plan.json, dann:
node $S/03-dung-hyperframes.mjs --work $W
cd $W/hfproj && npx hyperframes check --json # muss: lint 0 Fehler, layout 0, contrast alle bestanden
npx hyperframes snapshot --at <vom Skript ausgegebene Zeitpunkte> # KI-Sichtprüfung: Textumbrüche, Überdeckungen, Farben
Korrigiere Plan/Text → führe Schritt 03 erneut aus, bis das Bild sauber ist (lange Texte kürzen, nicht die Schrift verkleinern).
Schritt 5 – Rendern + Export (maschinell, ~1,5x Videolänge auf Mac M1 Pro).
node $S/04-render-xuat.mjs --work $W --out "<Ausgabeverzeichnis>" --quality delivery
Prüfe Länge, Ton, LUFS, erzeuge soat.jpg, kopiere dann Video + du-an-hyperframes/ + Plan/Segs/Transkript in das Ausgabeverzeichnis. KI prüft soat.jpg abschließend.
Schritt 6 – Bericht. Teile dem Benutzer mit: Video-Pfad, Länge vorher/nachher, Schnitttabelle mit Zeitpunkten (Abschnitte, Kernaussagen), was entfernt wurde, und wo in plan.json nachgebessert werden kann. Lösche den Render-Cache (siehe Hinweise).
Referenzen
scripts/lib.mjs: ffmpeg/Whisper/Wortgruppensuche, Codec-Auswahl nach System.scripts/01-chuan-bi.mjs·02-cat-doan.mjs·03-dung-hyperframes.mjs·04-render-xuat.mjs·kiem-tra-may.mjs.scripts/template.tpl: HTML + GSAP (9 Textarten, Punch-In, Füllaufnahmen, Ken-Burns-Effekt).references/plan-json.md: Plan-Format + Textarten-Tabelle ·references/vi-du-plan.json: echter Plan mit 23 Segmenten / 29 Texten.references/chon-doan-bien-tap.md: Regeln für Szenenauswahl, Handlungsstruktur, Bildrhythmus.- HyperFrames-Dokumentation: https://hyperframes.heygen.com (falls die Fertigkeiten
hyperframesoderhyperframes-cliverfügbar sind, zusätzlich lesen).
Hinweise / Gotchas
- Whisper-Zeitstempel sind ~0,3–0,5 s zu spät: Das Skript verschiebt den Eintrittspunkt um 0,3 s nach vorne; bei verbleibenden Lücken
lui_dauhinzufügen. - Erstelle keine Proxys für das gesamte 2.7K/4K-Quellvideo (11 min dauern ~40 min): schneide nur die ausgewählten Segmente (Schritt 3).
- Lege keine zweite
.html-Datei im Stammverzeichnis vonhfproj/ab: HyperFrames meldetmultiple_root_compositions. Die Vorlage befindet sich inscripts/. - Lint-Warnungen wie
nested_structure_needs_subcomposition/timeline_track_too_densesind nur organisatorische Hinweise und können ignoriert werden. - Der Render speichert den Decode-Cache im temporären Systemverzeichnis (
$TMPDIR/hyperframes-extract-cache-*auf Mac/Linux,%TEMP%unter Windows; ~2 GB bei 5 min Video): nach dem Rendern löschen. - Die "Checking browser"-Phase dauert beim ersten Mal einige Minuten (Browser wird heruntergeladen), kein Systemfehler.
- Fehlerhafte Transkription: Bildschirmtexte müssen korrekt geschrieben sein, nicht die Roh-Transkription verwenden. Durchgehende Untertitel werden in dieser Fertigkeit noch nicht unterstützt.
- HDR/LOG-Video: Vorher in SDR konvertieren (Schritt 1 gibt eine Warnung aus); die Echtzeit-Farbkorrektur arbeitet nur mit Rec.709.
- Speicherkarte der Kamera: Muss von Schritt 1 bis einschließlich Schritt 3 eingesteckt bleiben (Schritt 3 greift auf die Originaldatei zu). Am besten das Video vorher auf den Rechner kopieren.
- Windows: Pfade mit Leerzeichen immer in Anführungszeichen setzen.
Ausgabe
<Ausgabeverzeichnis>/: <slug>.mp4, du-an-hyperframes/ (index.html + Konfiguration, ohne Medien), plan.json, segs.json, ban-cat.txt, loi-thoai.txt, kiem-tra-noi.json, broll.json, soat.jpg.