name: vm-dung description: Erstellt Bilder für ein VideoMotion-Projekt mit vorhandener Sprachausgabe und Szenenaufteilung: Lädt Schriftarten des Stils, schreibt Farben, weist jede Szene parallel einem Agenten vm-canh zu, fügt sie zusammen, prüft technische Aspekte, rendert und mischt Audio und Untertitel. Wird in Schritt 7 von /videomotion verwendet oder wenn der Benutzer „Szene neu erstellen“, „rendern“, „Video exportieren“ oder „Szene X korrigieren“ sagt.
Szenenbilderstellung und Videoexport
VV, PY wie in der Fertigkeit videomotion. HF ist npx -y [email protected]. Eingabe in <du-an>: storyboard.json, words.json, timeline.json, mix.wav.
1. Vorbereitung nach Stil
- Schriftart des Stil-Tags (Google Fonts im Tag):
"$PY" "$VV/tools/fonts.py" <du-an> "VT323" "Be Vietnam Pro:400,700"erzeugtfonts/undfonts.css. theme.css::rootVariablen aus der Farbpalette des Tags:--bg,--ink,--accent, Sekundärfarbe,--cap-bg,--cap-ink(Untertitel mit Kontrastverhältnis 4,5:1).- Stil mit durchgehendem Hintergrund im Video (Karte, Papier, Tafel, Raster):
compositions/_nen.htmlschreiben (id_nen), Szenen haben transparenten Hintergrund. "$PY" "$VV/tools/assemble.py" <du-an>: erstelltindex.html, kopiert Schriftarten, erstellt Platzhalterdateien für noch nicht vorhandene Szenen."$PY" "$VV/tools/packets.py" <du-an>: Erstellt Aufgabenpaketechecks/packets/<id>.mdfür jede Szene.
2. Parallele Szenenvergabe
Sende alle in derselben Nachricht, jeder Szene einen Agenten, Agententyp videomotion:vm-canh (bereits mit model: sonnet, effort: medium deklariert: immer neuestes Sonnet). Kurze Aufgabenbeschreibung:
Erstelle Szene
<id>. Aufgabenpaket:<du-an>/checks/packets/<id>.md. Vorlage:$VV/templates/scene.html. Schreibe die Datei<du-an>/compositions/<id>.html.
Falls kein vm-canh-Agent verfügbar (Fertigkeit nicht über Plugin installiert oder andere Tools): Verwende einen Allzweck-Agenten mit model: "sonnet", effort: "medium" und weise ihn an, zuerst $VV/agents/vm-canh.md zu lesen. Tools ohne Unter-Agenten erstellen die Szenen nacheinander gemäß dieser Datei.
Bei weniger als 3 Szenen selbst erstellen, keine Vergabe.
3. Zusammenführung und technische Prüfung
"$PY" "$VV/tools/assemble.py" <du-an>
cd <du-an> && npx -y [email protected] check
Korrigieren, bis Check passed, 0 Fehler (Fehler in einer Szenendatei -> diese Datei korrigieren). Warnung timeline_track_too_dense bei Untertiteln ist normal. Keine Abnahme oder Freigabe durch Dritte erforderlich; der Benutzer kann eine Vorschau mit npx -y [email protected] preview --background anzeigen.
4. Rendern und Audiomischung
"$PY" "$VV/tools/assemble.py" <du-an> --no-audio
cd <du-an> && npx -y [email protected] render --output renders/raw.mp4 > renders/render.log 2>&1
"$PY" "$VV/tools/audio/mix.py" srt <du-an>
"$PY" "$VV/tools/audio/mix.py" final <du-an> --video <du-an>/renders/raw.mp4 --name <slug>-<ddmmyyyy>
"$PY" "$VV/tools/assemble.py" <du-an>
Render läuft im Hintergrund (ca. 2 Sekunden Rechenzeit pro Videosekunde). --no-audio ist erforderlich: mix.py final mischt die unveränderte mix.wav bei. Der letzte assemble-Befehl erstellt index.html als Version mit Ton für die Vorschau.
5. Einmalige Prüfung
ffprobe renders/<name>.mp4: korrekte Auflösung, Audiospur vorhanden, Dauer gleich total in words.json. Einen mittleren Videoframe mit ffmpeg extrahieren und kurz ansehen. renders/<name>.mp4 und phude.srt übergeben.