Communitygithub.com

renoise-ai/renoise-skills

Erstelle Produkt-, Marken- oder Service-Promovideos: Analysiere Benutzermaterial, bestimme Branche und Zielgruppe, empfehle Stil und Länge, verfasse Storyboard und rendere nach Bestätigung als MP4 mit Remotion – als Vorlagen-Clip (storyboard-gesteuerte Typografie, SVG, Bilder) oder Filmsequenz (3D-Metall-Logo, echte UI-Demos mit Tipp- und Klick-Animationen, 3D-Galerie mit Tiefenschärfe, Bewegungsunschärfe, echten Tastaturgeräuschen) mit automatischer Musikauswahl aus eingebauter Open-Source-Bibliothek (oder Nutzermusik, oder synthetisiertem Fallback); jede Sequenz wird mit einer Motion-Design-Schicht überlagert (Match Cuts, animierte Typografie, Shape-Morphing, Maskenübergänge, Partikel-Höhepunkte). Erstelle auch Portfoliosammelvideos, reine Motion-Graphics-Showreels (animierte Schrift, Shape-Morphing, 3D, Partikel, Masken-Rhythmus) und Single-Shape-UI-Morph-Loops (eine Form mutiert kontinuierlich, federt, direkte Cursor-Steuerung, nahtlose Schleife). Verwende dies, wenn der Nutzer nach 宣传视频、宣传片、产品发布视频、产品介绍动画、动态设计作品集、片头、Promovideo, Produkteinführungsvideo, Erklärvideo, Markenvideo oder Motion-Graphics-Showreel oder einem Looping One-Shape-UI-Morph fragt.

Was ist renoise-skills?

Diese Fähigkeit, `renoise-ai/renoise-skills`, ist ein umfassendes Tool zur Erstellung professioneller Promovideos, Showreels und UI-Morph-Animationen, das auf KI-Agenten wie Claude Code, Cursor und Codex zugeschnitten ist. Es analysiert Benutzermaterial (Texte, PDFs, URLs, Screenshots, Logos), bestimmt Branche und Zielgruppe, empfiehlt Stil und Länge und leitet die Entwicklung eines detaillierten Storyboards ein. Nach der Bestätigung durch den Nutzer rendert die Fähigkeit das Video als MP4 unter Verwendung von Remotion. Es unterstützt zwei Hauptmodi: einen schnellen Vorlagen-Clip-Modus (basierend auf einem `storyboard.json`-gesteuerten dynamischen Layout mit SVG, Bildern und Typografie) und einen filmischen Modus, der aufwändige 3D-Elemente (Metall-Logos), realistische UI-Demonstrationen (Tipp- und Klick-Animationen) und kinematografische Effekte (Tiefenschärfe, Bewegungsunschärfe) bietet. Jedes Video erhält automatisch eine Motion-Design-Schicht mit Effekten wie Match Cuts, animierter Typografie, Shape-Morphing, Maskenübergängen und Partikeleffekten. Die Musikauswahl erfolgt automatisch aus einer integrierten Open-Source-Bibliothek, wobei das Tempo (BPM) an die Schnitte angepasst wird. Der gesamte Workflow ist stark automatisiert: vom Einrichten des Projekts (mit automatischer Schrifterkennung und -vorschlägen aus dem Web) über das Rendern von Standbildern zur Vorschau bis hin zur finalen Qualitätskontrolle (Prüfung auf schwarze Frames, Tonaussetzer, Hartschnitte) mit dem integrierten CLI-Tool `rn` (renoise-kit). Die Fähigkeit ist plattformübergreifend (macOS, Linux, Windows) einsetzbar und legt großen Wert auf Benutzerbestätigung in jedem Schritt, um Fehlinterpretationen zu vermeiden.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/renoise-ai/renoise-skills/tree/HEAD/skills/promo-video

In Ihrer bevorzugten KI fragen

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

Dokumentation

Werbevideo

Pfadkonvention: <skill> bezieht sich auf das Verzeichnis, in dem sich diese SKILL.md befindet. scripts/, references/, assets/, templates/ befinden sich alle darunter. Ersetzen Sie <skill>/scripts/… in den Befehlen durch den absoluten Pfad zu diesem Verzeichnis, bevor Sie sie ausführen.

Standardwerte

  • Seitenverhältnis 16:9 (1920×1080, 30 fps). Wenn der Benutzer ein bestimmtes Format angibt, wird dies verwendet. Unterstützt werden 16:9, 9:16, 1:1, 4:5. Wenn der Benutzer vertikale Plattformen wie Douyin, Xiaohongshu, Video Account, Reels usw. erwähnt, verwenden Sie 9:16.
  • Die Sprache folgt dem Benutzermaterial. In der ersten Phase wird keine Sprachaufnahme gemacht. Wenn die Bildschirmtexte bereits Informationen enthalten, sind Untertitel standardmäßig deaktiviert.
  • Schriftarten fallen standardmäßig nicht auf DM Sans / SF Pro / PingFang: Erstellen Sie gemäß references/typography.md einen „Schriftartenvorschlag“ – Schriftarten von der offiziellen Website oder dem Markenhandbuch + 3 Paare nach Stimmung ausgewählt. Verwenden Sie fonts.py specimen, um mit dem tatsächlichen Text des Clips Bilder zu generieren, die der Benutzer auswählen kann. Nach der Auswahl tragen Sie diese in die fünfte Zeile der Auswahlkarte ein.
  • Keine harten Schnitte, keine digitalen Stille, Text durch die Detail-Checkliste: Gehen Sie vor der Auslieferung gemäß references/detail-pass.md durch (Checkliste für Übergangspunkte → rn sheet --around → rn qa / rn cuts → typo_lint.py / font_check.py). Die meisten von Benutzern als „abrupt“, „Audio-Probleme“ oder „nicht elegant genug“ beanstandeten Punkte stammen von hier.
  • Das Logo wird vom Benutzer bereitgestellt. Wenn kein Logo bereitgestellt wird, verwenden Sie einen Textmarker mit dem Markennamen und vermerken Sie in brand.disclaimer einen Haftungsausschluss, z. B. „Beispielmarke, nur zur Vorführung“. Vom Benutzer nicht angegebene Statistiken gelten als Beispiele und müssen ebenfalls in den Haftungsausschluss aufgenommen werden. Es dürfen keine echten Daten erfunden werden.
  • Priorität der Begleitmusik: Benutzer bereitgestellt > Eingebaute Musikbibliothek pick_music.py (Standard, vermeidet automatisch kürzlich verwendete Titel) > Online-Open-Source-Bibliothek als Ergänzung > synth_bgm.py Synthese als Fallback.

Abhängigkeit: rn (renoise-kit)

Bild und Ton werden mit Remotion gerendert. Überlassen Sie alle mechanischen, fehleranfälligen Schritte rn: frame-genaues Extrahieren von Einzelbildern und Kontaktblättern, Lesen von Musik (Lautstärke / Beat-Punkte / Tempo), Encoding und Mastering des fertigen Clips, Auslieferungsprüfung, Audit von harten Schnitten / Stille / Übersteuerungen. render.py ist bereits angebunden. Verwenden Sie bei manueller Ausführung direkt rn <Befehl> --help, um die Parameter zu prüfen.

brew install ffmpeg-full && export PATH="$(brew --prefix ffmpeg-full)/bin:$PATH"   # macOS: `rn` ruft das systemeigene ffmpeg auf
apt install ffmpeg                                                                 # Debian / Ubuntu
winget install Gyan.FFmpeg                                                         # Windows (nach der Installation neues Terminal öffnen)
uv tool install "renoise-kit[all]"                                                 # Stellt den Befehl `rn` bereit

Gemeinsam für macOS, Linux, Windows: Die Skripte der Fähigkeit sind alle Python und hängen nicht von Bash ab. Ersetzen Sie im Folgenden python3 unter Windows durch python (oder py -3); Pfade können mit / oder \ verwendet werden.

AufgabeBefehl
Material / Vorschau / Einzelbildordner ansehenrn sheet <Video oder Ordner> [--fps 4 | --around Zeitstempel,.. --span 4 --diff]
Begleitmusik analysieren: Lautstärke, Beat-Punkte, BPM (inkl. Halb-/Doppeltempo-Kandidaten)rn listen bgm.wav --json out/music.json
Frameweise Helligkeit / Bewegung / Frequenzbänder / Drums / Übersteuerungenrn signal <Datei> -o out/signal.png --json out/signal.json
Encoding, Mastering, Ton austauschen, 1080p ausgebenrn finish raw.mp4 -o out.mp4 [--audio mix.wav] [--height 1080]
Auslieferungsprüfung (Format, Lautstärke, True Peak, Stille, Pegelsprünge, Übersteuerungen, schwarze Frames, eingefrorene Frames, konstante Bildrate)rn qa out.mp4 [--accept CHECK@Sekunde]
Liste der harten Schnitte + Einzelbilder vor und nach jedem Schnittrn cuts out.mp4 --sheet out/audit/cuts.jpg
Vergleich mit vorheriger Version / Referenzcliprn compare neu.mp4 alt.mp4 --cuts
Bildschirmtext (Textprüfung, Untertitel eines Referenzclips lesen)rn text out.mp4

Modusauswahl & Stil-Routing

Jeder Clip durchläuft zunächst gemäß references/style-router.md eine vierschichtige Auswahl: ① Modus ② Visueller Grundton ③ Narrative Struktur ④ Verstärkungsebene (≤2), plus ⑤ Schriftart (typography.md). Schreiben Sie eine fünfzeilige „Auswahlkarte“ und platzieren Sie sie über der Storyboard-Tabelle zur Bestätigung durch den Benutzer. Lesen Sie nur die ausgewählten Dokumente. Bei Konflikten: Benutzer sagt es deutlich > Bewertungseinträge in der Routingtabelle > Branchenstandard. Die folgende Tabelle zeigt ① Modus und die Einstiegspunkte der einzelnen Erweiterungspakete:

Was der Benutzer möchteModusZuerst lesenBeispiele
Produkt-/Dienstleistungs-Promovideo, Launch-VideoFilmischer Promo-Clip (Standard)cinematic.md → motion-craft.mdexamples/youware/, examples/renoise/
Schnelle Erklärung, Social-Media-BatchVorlagen-Clipstoryboard.md, styles.mdstoryboard.json
Persönliche Vorstellung, Kanal-PromoPersonal Brand Clipcinematic.md „Personal Brand & Pixel-Avatar“—
Hardware-Konzept für Smartphones, Geräte etc.Hardware-Konzept-Clipcinematic.md „Physisches Hardware-Produkt“—
Mehrere fertige Clips zu einem Sammelvideo schneidenPortfolio-Rückblickrecap.md—
Motion-Design-Fähigkeiten zeigen, Intro, Channel-IDMotion-Design-Showreelmotion-craft.mdexamples/motion-reel/
Musik-getrieben, flüssig verschmelzend, Datencharts, unendliche Reise, perspektivische EnthüllungStyle-Erweiterungspaket 01 (auf filmischem Promo-Clip aufgesetzt)style-pack-01.md (für musik-getrieben zuerst audio_features.py ausführen)—
Eine durchgehende Einstellung, keine harten Schnitte, das durchgehende Gefühl eines Referenzclips lernen; Produkt hat einen „Input→Output→Dauerbetrieb“-PfadStyle-Erweiterungspaket 02: Eine durchgehende Einstellung Staffellauf (narrative Struktur, mit Voiceover)style-pack-02.md (für Voiceover zuerst narrate_mimo.py ausführen, kann die Stimme des Kunden klonen)Komponenten in src/cinematic/relay/
Icons bewegen sich, dynamische Emojis, Prozessknoten leuchten nacheinander aufAnimierte Icons (auf jeden Modus aufsetzbar)animated-icons.md (für Emojis zuerst fetch_noto_emoji.py ausführen)examples/animated-icons/
Marken-Tonalitäts-Clip, Marken-Relaunch, „Claude-ähnliche“ offizielle Qualität, Apple-artige Menschlichkeit, keine konkreten Funktionen zeigenStyle-Erweiterungspaket 03: Konzeptleiter · Vitrine (Punkt→Linie→Fläche→Körper→Feld, jedes Kapitel ein Wertesatz, am Ende Logo-Platzierung; 60s, Klavier)style-pack-03.md (für Glyphen-Vitrine zuerst glyph_outline.py ausführen)examples/youware-ladder/
Modell-/Produkt-Launch-Clip, „soll hochwertig wirken UND Kompetenz beweisen“; Name ermöglicht Wortspiele; offizielle Größenordnungs-Fakten (zählbare Wunder) vorhandenStyle-Erweiterungspaket 04: Sonett · 3D-Tiefenschärfe (Drehbuch ist ein Gedicht, eine Zeile pro Abschnitt; Datenblatt-HUD nur offizielle Zitate; 680.000 Striche zu einem Markenstern ausgerichtet)style-pack-04.md—
„N Stile“-Kompilation, ein Produkt in verschiedenen Stilen präsentieren, zur Auswahl für den Kunden; Unterhaltungs-Texteinblendungen / Aufkleber-Stil-Erklärung / isometrische 2.5D-MikrostadtStyle-Erweiterungspaket 05: Kommerzielle Stilbibliothek (Stilkatalog-Clip-Vorlage + Texteinblendungen + Aufkleber + isometrisch; kann auch einzeln auf jeden Modus aufgesetzt werden)style-pack-05.md (Three.js-Probefilme zuerst als Video vorrendern, dann in den Katalog-Clip einfügen)examples/style-catalog/
Frame-für-Frame-Handzeichnung / Linienkunst / Collage / Flache Illustration / Bauhaus-Plakat / Flüssig / Diffuses Glas / 3D-weiches Nadelkissen / Cyber-HUD / Pixel / Synthwave, oder vollständige 15-Stil-KompilationStyle-Erweiterungspaket 06: Kommerzielle Stilbibliothek Teil 2 (11 Stilkomponenten + 15-Feld-Katalog-Clip + Musik nach Abschnitten verlängern / Retro-Synth-Begleitmusik)style-pack-06.md (die beiden Fallstricke Filterregion und three-Bounding-Box unbedingt beachten)examples/style-catalog/ (Reel15.tsx)
„Gleiches Thema im Vergleich“-Kurzfilm am Tag des neuen Modell-Launches: Animierte SVGs / kleine Arbeiten beider Modelle nebeneinander + YouWare-Eingabefeld und Modell-Menü + EndhakenModellausgabe-Vergleichsclip (framegenauer SVG-Player, Namensisolierung, gleicher Zoom in gleicher Entfernung, Musik nach Abschnitten)svg-compare.md (zuerst offiziellen Modellnamen, Inferenzstärke, Original-Prompt und Generierungsquelle bestätigen)examples/svg-compare/
Dribbble-würdige UI-Animation, eine Form mutiert kontinuierlich und erzählt den ProduktablaufSingle-Shape-Promoclip (Standard: 16:9 Promo-Version; reine 1:1 Loop-Version optional)one-shape.md (zuerst Zustandsliste, Farbschema, Musik, Taktgitter erstellen, dann Code schreiben)examples/morph-promo/, examples/morph-loop/

Alle Modi teilen sich dieselben Design-Prinzipien, Motion-Design-Schicht, Musikbibliothek und Soundeffekt-Bibliothek.

Design-Prinzipien (standardmäßig ausgeführt)

Alle Clips werden gemäß references/design-principles.md erstellt: Apple-artig eine Idee pro Bildschirm, große Schrift mit Weißraum, zurückhaltender Farbgebrauch und glaubwürdige Materialien; einheitliche lucide-react-Icons (1.75 Strichstärke, Funktionsknoten verwenden IconTile; für Animationen lucide-animated verwenden, bei Kontakt-frame einmal abspielen), Emojis nur als animierte Noto-Version und standardmäßig nicht verwenden, keine Platzhaltergrafiken; jeder Frame bestimmt zuerst Fokus und Stimmung, Kamerabewegung hat eine Motivation (Dolly, Fokusverlagerung, Durchfahrt, Schwung, kraftvoller Zoom); Sound liegt auf dem Kontaktframe der Aktion. Gehen Sie vor der Auslieferung Punkt für Punkt die „Master-Review“-Checkliste durch.

Nachdem die inhaltliche Ebene erstellt wurde, fügen Sie die „Motion-Design-Ebene“ hinzu (references/motion-craft.md): Verwenden Sie zuerst die offiziellen Website-Materialien und überlagern Sie dann Partikel, Verformungen, Masken auf diesen Bildern (z. B. Partikel sammeln sich auf dem Produktscreenshot zum Slogan). Schneiden Sie keinen separaten Abschnitt mit schwarzem Hintergrund ohne Bezug zum Produkt. Schreiben Sie die Übergänge zwischen den Abschnitten klar (bevorzugt Match Cuts). Das Eröffnungsobjekt kehrt am Ende zurück.

Arbeitsablauf

Kopieren Sie diese Checkliste und verfolgen Sie den Fortschritt:

- [ ] 1. Materialanalyse: Produkt, Branche, Zielgruppe, Verkaufsargumente
- [ ] 2. Einmalige Bestätigung: Zweck, Stil, Länge, Seitenverhältnis, Sprache, Begleitmusik
- [ ] 2b. Schriftartenvorschlag: 3 Paare nach Stimmung + Vorschlagbild der aktuell verwendeten Markenschriftart (fonts.py specimen) → Benutzer wählt aus
- [ ] 3. Skript-Storyboard (inkl. Spalte für Haupttechnik und Übergang jedes Abschnitts) → auf Benutzerbestätigung warten
- [ ] 4. Projekt anlegen → Standbilder → auf Benutzerbestätigung des Bildes warten
- [ ] 5. Begleitmusik: pick_music.py wählt Titel und passt Takt an, Zeitachse nach BPM des Titels neu anordnen
- [ ] 6. Niedrigauflösungsvorschau → Änderungen
- [ ] 6b. Detail-Review: Liste der Übergangspunkte + 4 Frames davor und danach (rn sheet --around) + rn qa / rn cuts + typo_lint.py (vor dem Zeigen der Vorschau für den Benutzer selbst durchgehen)
- [ ] 7. Auslieferung des fertigen Clips und Verifikation

1. Materialanalyse

Lesen Sie alle vom Benutzer bereitgestellten Inhalte (Texte, PDFs, URLs, Screenshots, Logos). Wenn der Benutzer nur eine URL bereitgestellt hat, extrahieren Sie gemäß references/brand-from-website.md Logo, Schriftarten, Farbschema und hochauflösende Produktbilder von der offiziellen Website. Destillieren Sie:

  • Was ist das Produkt, ein Ein-Satz-Wertversprechen (≤ 20 Zeichen)
  • 3–4 Verkaufsargumente, jedes mit einem Icon-Motiv
  • Vom Benutzer explizit angegebene Daten (nur diese verwenden)
  • Vorhandene visuelle Assets: Screenshots, Logo, Markenfarben, Schriftarten
  • Branchenklassifizierung und Zielgruppe: gemäß references/industries.md bestimmen, um empfohlenen Stil, Kameraführung und Musikstimmung zu erhalten

2. Einmalige Bestätigung

Fragen Sie alles auf einmal, fragen Sie nur nach Punkten, die nicht abgeleitet werden können, und setzen Sie jedes Mal die empfohlene Option an die erste Stelle und kennzeichnen Sie sie mit „(empfohlen)“. Wenn der Host ein Fragebogen-Tool mit Auswahlmöglichkeiten hat, verwenden Sie es (diese Tools haben eine begrenzte Anzahl von Fragen pro Durchgang; bei vielen Fragen nach Wichtigkeit auf zwei Runden aufteilen). Wenn nicht, listen Sie die Optionen in einer Nachricht als nummerierte Optionen auf:

  • Videozweck: Produkteinführung, Funktionsdemonstration, Markenimage, Fundraising-Pitch, Social-Media-Werbung
  • Produktionsmodus: Filmisch (echte UI-Demonstration + 3D + Soundeffekte, empfohlen für Produkteinführung/Marken-Clips) oder Vorlagen-Clip (schnelle Ausgabe, geeignet für Erklärungen, Social-Media-Batches)
  • Filmischer Stil: Dunkle Tech-Ästhetik / Scherenschnitt / Hell-Redaktion, nach Branche empfohlen (siehe cinematic.md „Stile“)
  • Stil: 3 Voreinstellungen nach Branchentabelle, jede mit einer Bildbeschreibung (Voreinstellungen siehe references/styles.md)
  • Länge: Stufen nach Zweck (siehe references/storyboard.md), Hinweis „Je kürzer die Länge, desto weniger Text pro Bildschirm“
  • Seitenverhältnis: Nur fragen, wenn das Material auf ein vertikales Format oder Multi-Plattform-Auslieferung hindeutet, sonst standardmäßig 16:9 verwenden
  • Sprache
  • Quelle der Begleitmusik: Eingebaute Musikbibliothek (empfohlen, 2–3 Kandidaten mit Stilbeschreibung angeben) / Selbst bereitgestellt / Synthetisiert

Bereits vom Benutzer klar genannte Punkte nicht erneut fragen.

2b. Schriftartenvorschlag

Gemäß references/typography.md §1: Stimmung bestimmen → fonts.py pairs --tone <Stimmung> (wenn die offizielle Website eine kommerzielle Schriftart verwendet, zuerst fonts.py similar "<Schriftartname>") → Vorschlagbild mit tatsächlichem Titel, Untertitel, Fließtext und Chinesisch/Japanisch des Clips erstellen, 3 Paare + 1 Paar aktuell verwendete Markenschriftart:

python3 <skill>/scripts/fonts.py specimen --pair warm-soft --pair editorial-italic --pair bold-youth --combo <Markentitelschrift>+<Markenfließtextschrift> \
  --title "..." --sub "..." --body "..." [--zh "..."] [--ja "..."] --out <Projektverzeichnis>/out/type-proposal.png

Bild an Benutzer senden zur Auswahl; nach Auswahl fonts.py fetch <ids> --to <Projektverzeichnis>, nach Fertigstellung des Textes fonts.py subset <Projektverzeichnis> --text-file copy.txt (für Chinesisch/Japanisch). Lizenzierung gemäß typography.md §8: Fontshare-Schriftarten nicht subsetten und nicht mit dem Projekt an Dritte weitergeben.

3. Skript-Storyboard

Wenn der Benutzer ein Skript bereitgestellt hat, teilen Sie es in Szenen auf. Andernfalls schreiben Sie es gemäß der Struktur von references/storyboard.md. Schreiben Sie zuerst die Auswahlkarte (style-router.md) über die Tabelle, dann geben Sie die Tabelle zur Bestätigung an den Benutzer:

#DauerSzenentypBildBildschirmtextKameraführungHaupttechnik / Übergang

Kein Rendern ohne Bestätigung durch den Benutzer. Nach Änderungen durch den Benutzer die Tabelle aktualisieren und erneut bestätigen.

4. Projekt anlegen und Standbilder rendern

python3 <skill>/scripts/setup_project.py <Projektverzeichnis>

Für filmisch: storyboard.json enthält nur Markeninformationen, das Bild wird in src/Film.tsx gemäß references/cinematic.md programmiert (siehe templates/remotion/examples/youware/). Verwenden Sie für Standbilder render.py <Projektverzeichnis> film-stills <Frame-Nummern...>, um abschnittsweise zu prüfen, Vorschau mit film-preview, finaler Clip mit film (Ausgabe out/film.mp4 mit Lautstärkeprüfung). Die folgenden Storyboard-Validierungen und render.py gelten für Vorlagen-Clips.

  • Schreiben Sie das bestätigte Storyboard in <Projektverzeichnis>/storyboard.json (Felder siehe storyboard.md).
  • Material in public/ ablegen: brand/ (Logo), fonts/ (mit fonts.py fetch herunterladen, inklusive fonts.json und LICENSES.md), images/ (Screenshots), music/. Pfade in storyboard.json sind relativ zu public/.
  • Validieren und Standbilder rendern (Mittenframe jeder Szene):
python3 <skill>/scripts/check_storyboard.py <Projektverzeichnis>/storyboard.json
python3 <skill>/scripts/render.py <Projektverzeichnis> stills
  • ERROR muss behoben werden. WARN Lesedauer bedeutet, dass der Text nicht vollständig gelesen werden kann: Text kürzen oder Szene verlängern.
  • Sehen Sie sich jedes out/stills/scene-N.png an (out/stills-sheet.jpg ist eine Übersicht pro Seite). Überprüfen Sie gemäß der „Master-Review“-Checkliste von design-principles.md (Fokus, Weißraum, Überlauf, Icons, Kontrast). Nach der Korrektur die Standbilder dem Benutzer zeigen (wenn der Host Dateien senden kann, direkt das Bild senden, andernfalls den Dateipfad angeben).
  • Wenn der Benutzer Stile vergleichen möchte, ändern Sie den style und rendern Sie die Standbilder erneut. Speichern Sie die alten Standbilder unter out/stills-<Stil>/, um einen direkten Vergleich zu ermöglichen.

5. Begleitmusik

Verarbeiten Sie gemäß references/music.md. Unabhängig von der Quelle muss music.bpm gesetzt werden (aus rn listen gelesen). Die Zeitachse richtet jeden Schnittpunkt auf den Beat aus.

Wenn ein Voiceover benötigt wird, generieren Sie es gemäß cinematic.md „Voiceover“ mit voiceover.py (Xiaomi MiMo TTS oder systemeigenes say). Die Zeitachse wird dann durch die Dauer des Voiceovers gesteuert. Wenn die Lautstärke des fertigen Clips geändert werden muss, rendern Sie nur die Tonspur neu, nicht das Bild: rn finish out/film.mp4 -o out/film-loud.mp4 --copy-video --lufs -12.

6. Vorschau

python3 <skill>/scripts/render.py <Projektverzeichnis> preview

Schnelle Ausgabe in halber Auflösung. Geben Sie dem Benutzer den Pfad zu out/preview.mp4. Nehmen Sie Änderungen an storyboard.json basierend auf dem Feedback vor und rendern Sie erneut.

6b. Detail-Review

Bevor Sie dem Benutzer die Vorschau zeigen, gehen Sie gemäß references/detail-pass.md selbst durch:

rn sheet out/film-preview.mp4 --around <Sekunden der Übergangspunkte,...> --span 4 -o out/seam.jpg                       # 4 Frames vor und nach jedem Mount / Unmount / Parameterwechsel (Sekunden = Frame-Nummer / 30)
rn qa out/film-preview.mp4                                                                                             # Schwarze Frames, eingefrorene Frames, digitale Stille, Pegelsprünge, Übersteuerungen (wird von render.py automatisch ausgeführt)
rn cuts out/film-preview.mp4 --sheet out/audit/cuts.jpg                                                                # Liste der harten Schnitte, ein Frame vor und nach jedem Schnitt
python3 <skill>/scripts/typo_lint.py storyboard.json                             # Oder --ts src/film/*.ts*; --fix repariert JSON automatisch
python3 <skill>/scripts/font_check.py public/fonts                               # Optische Größenachse, echte Satzzeichen-Glyphen

Jeder Punkt muss entweder behoben oder in qa-accept.txt im Projektstammverzeichnis eingetragen werden (ein Eintrag pro Zeile: Prüfpunkt oder Prüfpunkt@Sekunde, nach # den Grund angeben) und im Auslieferungshinweis als „beabsichtigt“ vermerkt werden. Nachfolgende Audits melden es nicht erneut.

7. Fertiger Clip

python3 <skill>/scripts/render.py <Projektverzeichnis> final

Erzeugt out/final.mp4, out/cover.png und bei vorhandenem caption auch out/captions.srt. Dateien, die dem Benutzer übergeben werden, sind stets die Ausgabe von rn finish (film / final in render.py erledigt dies automatisch: Bild separat rendern, Tonspur separat als WAV rendern, dann mit rn finish --audio zusammenführen). Direkt von Remotion ausgegebene MP4s zeigen in einigen Playern und Upload-Plattformen nur die halbe Länge an (Benutzer-Feedback: „Clip 38s gesendet, aber nur 19s spielbar“). Die Ursache finden Sie in references/detail-pass.md unter „Auslieferungs-Encoding“. Beim manuellen Rendern in 4K:

npx remotion render src/index.ts Film out/film-raw-4k.mp4 --muted                # Komposition selbst ist 3840×2160; für 1080p-Komposition --scale=2 hinzufügen
npx remotion render src/index.ts Film out/mix.wav --codec=wav --config=remotion.audio.config.ts
rn finish out/film-raw-4k.mp4 -o out/<Name>.mp4 --audio out/mix.wav
rn finish out/<Name>.mp4 -o out/<Name>-1080p.mp4 --height 1080 --lufs keep                          # Für WeChat / Social Media
rn qa out/<Name>.mp4                                                                               # Alle Dateien, die versendet werden, müssen zuerst diesen Schritt durchlaufen

Überprüfen Sie die Ergebnisse von rn qa (FAIL muss 0 sein; WARN beheben oder in qa-accept.txt eintragen) und out/audit/cuts.jpg auf harte Schnitte. Betrachten Sie das Cover-Bild. Übergeben Sie dann den Dateipfad und eine kurze Beschreibung (Stil, Länge, Quelle der Begleitmusik und Lizenz, Haftungsausschluss-Inhalt, absichtlich beibehaltene WARNs). Nachdem der Benutzer eine Bewertung abgegeben hat (mag ich / nicht so gut wie vorher / neu machen), tragen Sie die „Kombination → Clip → Reaktion“ in den Bewertungseintrag von style-router.md ein.

Rendering-Einschränkungen

  • Alle Animationen müssen von useCurrentFrame() abgeleitet werden. CSS transition/animation, Framer Motion Auto-Play, setTimeout, seeds-loses Math.random() sind verboten, da sonst frameweises Rendern flackern oder versetzen kann. GSAP darf nur mit Frame-Seeking verwendet werden.
  • render.py muss außerhalb der Befehls-Sandbox ausgeführt werden (Headless Chrome benötigt Zugriff auf CPU-Kerne und GPU): Wenn der Host Shell-Befehle in einer Sandbox ausführt, lassen Sie diesen Befehl entsprechend aus der Sandbox.
  • Das Rendern des gesamten Clips (preview, final, film-preview, film) und das erste setup_project.py (npm install) dauern einige Minuten und überschreiten das Timeout der meisten Host-Befehle: Führen Sie es im Hintergrund aus (wenn der Host Hintergrundausführung unterstützt, verwenden Sie diese; andernfalls verwenden Sie die systemeigene Hintergrundmethode und leiten Sie die Ausgabe in out/render.log um: macOS / Linux nohup … > out/render.log 2>&1 &, Windows PowerShell Start-Process python -ArgumentList '…' -RedirectStandardOutput out/render.log -NoNewWindow, und überprüfen Sie später das Log). Führen Sie keine häufigen Polling-Durchläufe durch. stills, film-stills mit einigen Frames können im Vordergrund ausgeführt werden, mit einem erhöhten Timeout von 10 Minuten.
  • Kein globales Node erforderlich: setup_project.py sucht nach vorhandenem Node und lädt bei Bedarf eine tragbare Version nach ~/.cache/promo-video/node herunter. ffmpeg und rn müssen im System installiert sein (siehe „Abhängigkeiten“). setup_project.py gibt einen Hinweis, wenn sie fehlen.
  • hero3d rendert am langsamsten; ein Clip sollte 1–2 Instanzen nicht überschreiten.
  • Häufig verwendete Werkzeuge: rn finish (Auslieferungs-Encoding: fixed_frame_rate_flag=1, BT.709 TV Range, moov vorne, −14 LUFS und True Peak nach Encoding ≤ −1 dBTP, --audio durch WAV-Mix ersetzen, --height 1080 für kleinere Versionen); rn qa (Auslieferungsprüfung + schwarze Frames / eingefrorene Frames / digitale Stille / Pegelsprünge / Übersteuerungen, wird von render.py automatisch ausgeführt); rn cuts --sheet (Liste der harten Schnitte); rn sheet (genaues Extrahieren und Zusammenstellen von Frames, für Video oder Standbildordner, für Bildauswahl und Review; nicht ffmpeg -r 1 verwenden); rn listen (BPM, Beat-Punkte, Lautstärke); typo_lint.py (Gänsefüßchen, drei Punkte, --, japanische Satzzeichen, hängende Trennzeichen, Waisen in Bildschirmtexten); font_check.py (Achsen, Eigenschaften, echte Satzzeichen-Glyphen von Schriftartdateien, fehlendes opsz gibt Warnung); fonts.py (Schriftartenverzeichnis / Paare / Vorschlagbilder / Herunterladen / Subsetting / Kommerzielle Schriftarten-Alternativen, siehe typography.md); audio_features.py (frameweise Merkmale der Begleitmusik, AudioReactive.tsx liest dessen Format); pick_music.py (Titelauswahl und Taktanpassung); narrate_mimo.py (Voiceover: MiMo-Standardstimmen oder Klonen der Kundenstimme aus wenigen Sekunden Aufnahme, Ausgabe von wordweisen Zeitstempeln timings.json zur Steuerung des Bildes, --qa für Rücklese-Validierung).
  • Shell ist zsh: for t in $LIST teilt nicht nach Leerzeichen; schreiben Sie die Liste direkt in for t in 1 2 3; verwenden Sie bei Heredocs mit Backticks oder ${} <<'EOF', da sonst die Shell sie expandiert.

Erweiterung

  • Neuen Szenentyp hinzufügen: Komponente in src/scenes/ schreiben, in den Scene-Union-Typ von src/types.ts und SceneBody in src/Promo.tsx aufnehmen, und SCENE_TYPES und scene_text in check_storyboard.py aktualisieren.
  • Bilder mit <Img>; GIFs mit @remotion/gif; Lottie mit @remotion/lottie. Die Versionen der @remotion/*-Pakete müssen exakt mit remotion übereinstimmen.
  • KI-Materialergänzung: Vom Kunden nicht filmbare Personen und Szenen mit Renoise als Keyframes und Bild-zu-Video generieren (Renoise-Plugin muss installiert und angemeldet sein). Der Bildstil wird aus den eigenen Design-Spezifikationen des Kunden übernommen. Das Modell wird gemäß dem model-routing Skill von Renoise ausgewählt. Pro Batch zuerst estimate_cost ausführen, um Anzahl und Kostenschätzung zu melden, und erst nach Zustimmung des Benutzers einreichen. Ablauf, Prompt-Regeln und Grenzen siehe references/ai-footage.md.

Referenzen

  • references/brand-from-website.md: Extraktion von Text, Farbschema, Schriftarten, Logo und Produktbildern von der offiziellen Website
  • references/design-principles.md: Design-Prinzipien, Icon-Standards, Regie-Kameraführung, Sound und Master-Review-Checkliste (standardmäßig auszuführen)
  • references/detail-pass.md: Detail-Review: Drei Prinzipien (Kontinuität / keine Leere / Präzision), Ablauf für Übergangspunkte, Bild- und Ton-Rezepte für Hell→Dunkel-Übergänge, Bewertungsschwellen und Ausnahmen für rn qa, Auslieferungs-Encoding, bekannte Fallstricke (vor der Auslieferung unbedingt zu tun)
  • references/typography.md: Schriftsystem: Workflow für Schriftartenvorschläge, 11 Stimmungen → bevorzugte Schriftarten, 17 Paare (mit Entsprechungen für Chinesisch/Japanisch), welche Schriftarten in Top-Werbespots verwendet werden (verifiziert) und Open-Source-Alternativen, Schriftartdateien MÜSSEN die opsz-Achse enthalten, Videotypografie-Regeln und Display-Parameter, Lizenzierung (OFL / ITF FFL / Herstellerverträge), animierte Textkomponenten (src/cinematic/type/: VarType, OutlineFill, HandReveal, TrackIn, Decode), Detail- und Prüfliste
  • assets/fonts/catalog.json: 99 handverlesene Schriftarten (Google Fonts / Fontshare / GitHub Releases, Lateinisch + Chinesisch + Japanisch), 17 Paare, Tabelle mit kommerziellen Alternativen, Liste der Herstellerschriftarten zum manuellen Herunterladen; wird von scripts/fonts.py gelesen
  • references/cinematic.md: Filmischer Film-Modus: Stile, Szenenkomponenten, Produktschnittstelle und Berichtswiedergabe, 3D, Motion-Design und Sound-Design
  • assets/sfx/README.md: Verzeichnis der kostenlos kommerziell nutzbaren Soundeffekt-Bibliothek (Tippen, Maus, UI, Übergänge, Papier, Umblättern), preview.wav zum Anhören
  • assets/music/catalog.json: Musikbibliothek-Katalog (Stimmung, BPM, Energie-Höhepunkte, Lizenz, Download-URL und sha256); die Musikstücke werden nicht mit dem Repository verteilt, pick_music.py lädt sie beim ersten Gebrauch von der offiziellen Mixkit-URL nach ~/.cache/promo-video/music/ herunter und überprüft sie
  • references/industries.md: Branchenklassifizierung → empfohlener Stil, Kameraführung, Begleitmusik, Compliance-Hinweise
  • references/styles.md: 4 Stilvoreinstellungen und Regeln zum Überschreiben der Markenfarben
  • references/camera.md: Glossar der Kamerabewegungen, klassische Techniken und Rhythmusregeln
  • references/storyboard.md: storyboard.json-Felder, Längenoptionen, narrative Struktur und Textregeln
  • references/music.md: Eingebaute Musikbibliothek und pick_music.py, erweiterte Open-Source-Bibliothek, BPM-Taktanpassung, synthetisierter Fallback, Lautstärke und Lizenzierung
  • references/motion-craft.md: Motion-Design-Ebene: Zwei Stufen (zurückhaltend / ausdrucksstark), Technik-Landkarte, Übergangsdesign, Motion-Design-Showreel
  • references/recap.md: Mehrere fertige Clips zu einem Sammelvideo schneiden (Apple-artige Karussell-Rückschau)
  • references/animated-icons.md: Animierte Icons (lucide-animated 467, frameweise Ersatzdarstellung bereits gegengeprüft) und animierte Noto-Emojis (fetch_noto_emoji.py), Rhythmusregeln und Lizenzierung
  • references/style-router.md: Vierschichtiges Auswahlrouting: Modus, visueller Grundton, narrative Struktur, Verstärkungsebene, Bewertungseintrag, einheitliche Synthesizer-Sound-Regeln: Aktivierung von Synth-Orgeln pro Modus; falls bereits vorhandene Bewertungen und algorithmische Standardeinstellungen ersetzen, bleibt eigene Auswahl logisch korrekt. Bei Konflikten: Benutzer sagt es deutlich > Bewertungseintrag > algorithmische Standardeinstellung. Diese Datei enthält auch die Kurzbefehle der Maker-Fähigkeit, Commit-Typen, Shell, Sleep-Strategie und Logging-Workflow, da Claude Code keinen Zugriff auf Symbole hat, die die Fähigkeit installiert. Muss alle erledigten Aufgaben protokollieren.

Verwandte Skills