Communitygithub.com

Craft: Timing, Easing und Layout

Timing, Easing und präzises Layout für jedes Montagent-Video: Beat-Raster aus Musik, Easing-Kurven und Haltezeiten, Sicherheitsbereiche, Schriftgrößen und Zurückhaltung. Vor dem endgültigen Urteil laden.

Was ist Craft: Timing, Easing und Layout?

Diese Skill definiert die numerischen und gestalterischen Grundlagen für Montagent-Videoprojekte. Sie stellt sicher, dass alle Bewegungen (Schnitte, Einblendungen, Animationen) präzise im Takt der Hintergrundmusik liegen, basierend auf einem Beat-Raster, das entweder aus der Musik extrahiert oder manuell vorgegeben wird. Easing-Kurven (Cubic-Bézier) und Bewegungsdauern sind für verschiedene Szenarien (Eingänge, Ausgänge, Drifts) vorgegeben, um eine konsistente, professionelle Animation zu gewährleisten. Die Skill definiert außerdem Sicherheitsbereiche (Title-Safe, Action-Safe), um sicherzustellen, dass Text und wichtige Bildinhalte auf allen Ausgabegeräten sichtbar bleiben, und gibt Richtlinien für Schriftgrößen, Lesbarkeit (Kontrast, Zeilenlänge), Haltezeiten und maximale Bewegungsgeschwindigkeiten, um Ruckeln und Flimmern zu vermeiden. Sie betont die Zurückhaltung bei der Verwendung von Effekten und Farben und ist für die Verwendung in Montagent-Projekten auf beliebigen Plattformen wie Claude Code, Cursor oder Codex konzipiert. Die Skill bietet eine explizite Checkliste („The Look“), die vor dem Rendern jedes Frame überprüft werden muss.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/MBehtemam/montagent-skills/tree/HEAD/skills/montagent-craft

In Ihrer bevorzugten KI fragen

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

Dokumentation

Was macht Craft: Timing, Easing und Layout?

Die Zahlen, die jedes Montagent-Stück zusammenhalten, unabhängig von seiner Aufgabe, Form oder Bildrate. Zeiten sind in Millisekunden. Größen sind Anteile des Rahmens, gemessen an seiner kurzen Seite (der Höhe eines Breitbilds, der Breite eines Hochformats), damit sie bei jeder Größe und jedem Seitenverhältnis gültig sind. Das Rezept einer Job-Skill gibt eigene Zahlen für ihre eigenen Bewegungen vor; innerhalb dieses Rezepts haben diese Zahlen Vorrang.

Der Look

Überprüfen Sie bei jedem Look-Schritt die Frames, die der Schritt benennt, gegen jede der folgenden Zeilen, und das gesamte Video noch einmal, bevor Sie rendern. Bewerten Sie, was im Frame zu sehen ist, niemals, was Sie bauen wollten. Eine Zeile, die Sie anhand des Gesehenen nicht prüfen konnten, gilt als ungeprüft: Sehen Sie noch einmal hin.

  1. Im Takt. Jeder Schnitt, jeder Ein- und Ausgang und jeder Abschnittswechsel liegt auf dem gezeichneten Frame seines Beats oder höchstens einen Frame zu früh (Beat-Raster). query --from --to listet die Schnitte auf; vergleichen Sie sie mit dem Raster.
  2. Innerhalb des Sicherheitsbereichs. Jedes Wort liegt innerhalb des Title-Safe-Bereichs, jedes Gesicht und jedes Produkt innerhalb des Action-Safe-Bereichs (Sicherheitsbereiche). Für Text gibt query --at <t> --json die Tintenbox jedes Elements in Pixeln aus.
  3. Groß genug. Kein Text, der gelesen werden soll, ist kleiner als 3 % der kurzen Seite, und die Ebenen sind deutlich voneinander getrennt (Schrift).
  4. Lesbar. Text erreicht gegen seinen Hintergrund das Kontrastverhältnis aus Schrift, in jedem Frame, in dem er eingeblendet ist. Prüfen Sie bei Filmmaterial oder einem Foto den hellsten und den unruhigsten Frame.
  5. Ein Fokuspunkt. Zu jedem Zeitpunkt führt ein Element: das neueste, größte, hellste oder akzentuierteste. Alles andere ist verschwunden, steht still oder ist deutlich im Hintergrund (Zurückhaltung).
  6. Ruhig. In der preview strobt, ruckelt oder verdoppelt sich nichts (Geschwindigkeitsgrenzen).
  7. Lang genug zum Lesen. Jede Zeile wird für ihre Lesezeit gehalten, bevor etwas sie bewegt (Haltezeiten).
  8. Das Ende. Der letzte Frame ist vollständig und steht still, und das seit mindestens 1 s. Der Ton erreicht auf diesem Frame den Wert 0.

Der Look ist abgeschlossen, wenn jede Zeile auf jeder Kachel des Kontaktabzugs gilt und bei jedem Frame, den der Schritt benennt. Beheben Sie, was fehlschlägt, und kehren Sie dann zum Prüfschritt von montagent zurück.

Beat-Raster

Musik gibt den Takt vor. Finden Sie das Tempo und den ersten Downbeat, bevor Sie etwas platzieren.

  • Tempo angegeben im Briefing oder in den Asset-Notizen: Verwenden Sie es, mit dem angegebenen Downbeat.
  • Tempo nicht angegeben: Führen Sie python3 scripts/beat_grid.py <project> <spec> aus (führen Sie es mit --help für die Spezifikation aus). Es hört den Track, platziert ihn so, dass ein Downbeat dort landet, wo Sie ihn haben möchten, und blendet ihn auf dem letzten gezeichneten Frame aus. Es gibt das Projekt auf stdout aus, also leiten Sie es in eine neue Datei um und das Raster als JSON auf stderr. Lesen Sie beide Konfidenzen: Unter 1,5 oder downbeat_by von first ist das Raster eine Schätzung. Geben Sie bpm (und downbeat) in der Spec an, wenn Sie sie kennen, und geben Sie in Ihrer Übergabe an, dass das Raster geschätzt wurde.
  • Keine Musik: ein 500 ms Beat (120 BPM).

Die Arithmetik:

  • Ein Beat ist 60000 / BPM ms, ein Takt sind vier Beats, und eine Phrase sind vier Takte (manchmal acht).
  • Zählen Sie ab dem ersten Downbeat, niemals durch Addition. Der nte Beat ist downbeat + n × beat, dann auf seinen gezeichneten Frame verschoben: floor(round(t * fps / 1000) * 1000 / fps). Das wiederholte Addieren eines gerundeten Beats driftet alle paar Takte um einen Frame. measure --at bestätigt, dass ein Moment gezeichnet wird.
  • Bei 90, 100 und 120 BPM ist ein Beat eine ganze Anzahl von Frames bei 30 und 60 fps (auch 24 fps bei 90 und 120 und 25 fps bei 100). Bei anderen Tempi fallen die Beats 14, 14, 15 … Frames auseinander. Das ist in Ordnung, wenn jeder Beat vom Downbeat aus gezählt wird.

Wo Dinge hingehören:

  • Abschnittswechsel auf Downbeats und die größte Wendung des Stücks (die Enthüllung, die Marke) auf dem ersten Downbeat einer Phrase.
  • Hauptaktionen auf Beats: ein Schnitt, ein Wort, das landet, ein Farbwechsel. Sekundäre Bewegungen auf halben oder Viertel-Beats: ein Einpendeln, ein Staffeln innerhalb einer Gruppe, ein Label nach seinem Takt.
  • Welcher Frame ist „auf dem Beat“: Ein Schnitt, ein Blitz oder ein Pop ist auf dem Beat bei seinem ersten Frame. Eine Bewegung, die länger als ein halber Beat dauert und deren Ankunft der Punkt ist, endet stattdessen auf dem Beat.
  • Früh, niemals spät: Betrachter nehmen ein Bild, das seinem Ton hinterherhinkt, ab etwa 45 ms wahr, was ein bis zwei Frames sind. Ein Treffer, der einen Frame zu früh kommt, wirkt wie auf dem Beat; ein Frame zu spät wirkt wie verspätet.

Dauern und Easing

BewegungLängeFrames bei 30 fps
Ein Schlag: ein Blitzframe, der Einschlag eines Aufpralls, ein harter Austausch70–130 ms (unter 2 Frames wirkt wie ein Glitch)2–4
Eine kleine Bewegung: ein Pop, ein Schubser, ein einblendendes Label200–350 ms6–10
Eine Standardbewegung: eine Karte, die hereinkommt, eine Bewegung über einen Teil des Rahmens400–600 ms12–18
Eine schwere Bewegung: eine Helden-Enthüllung, ein großer Schub700–1000 ms21–30
Ein Drift: eine Hereinzoomen, ein langsames Schwebendie gesamte Zeit auf dem Bildschirm
  • Ausläufe laufen mit 60–70 % des Eingangs, den sie rückgängig machen.
  • Staffeln Sie Elemente in einer Gruppe um 60–130 ms (2–4 Frames bei 30 fps) und halten Sie die gesamte Staffelung unter 500 ms. Eine längere Gruppe erhält stattdessen für jedes Element einen eigenen Beat.
  • Kurven. Ankommende Dinge verlangsamen; weggehende Dinge beschleunigen; Dinge, die sich zwischen zwei Orten auf dem Bildschirm bewegen, verlangsamen sich in beide Richtungen. Wählen Sie eine Kurve pro Rolle für das gesamte Stück und behalten Sie sie bei: Die Kurve ist Teil der Stimme des Stücks.
RolleKurveSpitzengeschwindigkeit, × dem Durchschnitt
Eingang mit langem Einpendeln[0.16, 1, 0.3, 1]6,3
Sanfterer Eingang[0.25, 1, 0.5, 1]4,0
Pop mit etwa 10 % Überschwingen[0.34, 1.56, 0.64, 1]4,6
Ausgangease-in1,7
Zwischen zwei Orten, Wipes, Sweeps[0.65, 0, 0.35, 1]2,9
Drehung[0.3, 0.3, 0.5, 1]1,6
Drift, Tonausblendungen, konstante Drehunglinear1,0

Die Spitzenspalte dient der Geschwindigkeitsprüfung unten: Der schnellste Moment einer Bewegung ist ihre Durchschnittsgeschwindigkeit multipliziert mit dieser Zahl.

Geschwindigkeitsgrenzen

Setzen Sie bei einer schnellen Bewegung motion_blur auf das sich bewegende Element ("shutter": 180, "samples" 8–16), anstatt die Bewegung zu verlangsamen. Es ist kein Standard: Setzen Sie es auf die Elemente, die sich schnell bewegen, nicht auf alles. Ein Element ohne diese Einstellung wird als ein scharfes Bild pro Frame gezeichnet, sodass eine schnelle Bewegung als separate Kopien erscheint, und die folgenden Grenzen gelten für es. Prüfen Sie den schnellsten Frame jeder Bewegung: Distanz × Spitze ÷ (Länge in Frames).

  • Weg: Der Schritt einer Bewegung in ihrem schnellsten Frame bleibt unter der Hälfte der eigenen Größe des sich bewegenden Objekts entlang der Bewegung. Über seine gesamte Größe hinaus sieht das Auge zwei Dinge.
  • Rotation: Unter 45° pro Frame im schnellsten Frame. Etwas, das sich beim Drehen wiederholt (eine vierstrahlige Form, ein Zifferblatt mit zwölf Strichen), muss unter der Hälfte seines Wiederholungswinkels pro Frame bleiben, sonst scheint es sich rückwärts zu drehen: unter 45° für vier Speichen, unter 15° für zwölf Striche. Drei Umdrehungen in 1 s auf [0.16, 1, 0.3, 1] erreichen bei 30 fps etwa 200° pro Frame: Das strobt.
  • Lesen während der Bewegung: Text, ein Gesicht oder ein Screenshot, der sich während des Lesens weiterbewegt (ein Crawl, ein Schwenk über einen Screenshot, ein langer Drift), überquert höchstens 15 % der Rahmenbreite pro Sekunde. Das ist die Kinoregel von einer vollen Rahmenbreite in nicht weniger als 7 s.
  • Blitze: Höchstens drei Vollbild- oder große Helligkeitswechsel in einer einzigen Sekunde, einschließlich Glitch-Schnitte und Stroboskopeffekte.

Haltezeiten

  • Lesezeit: 330 ms pro Wort (etwa drei Wörter pro Sekunde), plus einen Beat, um die Ankunft der Zeile zu bemerken. Niemals unter 1 s für eine Zeile, und aufgerundet zum nächsten Beat.
  • Zu lang: Ein Frame, in dem sich länger als etwa 7 s nichts bewegt, wirkt wie ein Stillstand. Geben Sie ihm einen Drift, oder machen Sie weiter.
  • Das Ende: Der letzte Frame vollständig und mindestens 1 s lang still (eine Marke oder ein Call-to-Action: 1,5 s oder mehr).

Sicherheitsbereiche

Die Ränder des Bildes werden beschnitten, überdeckt oder übersehen. Halten Sie, was wichtig ist, innerhalb dieser Kästchen. Hintergründe, Anschnitte und Hintergrundflächen laufen bis zum Rand und darüber hinaus.

RahmenTitle-Safe: jedes WortAction-Safe: Gesichter, Produkte, die Aktion
Breit oder quadratisch (16:9, 4:3, 1:1)5 % von jeder Kante nach innen3,5 % von jeder Kante nach innen
Hoch (9:16, 4:5)5 % von den Seiten, 12,5 % von oben und unten3,5 % von jeder Kante nach innen

Bei 1920×1080 ist Title-Safe x 96–1824, y 54–1026. Bei 1080×1920 ist es x 54–1026, y 240–1680. Wenn das Briefing besagt, dass das Video in einem Feed abgespielt wird, dessen Player eigene Schaltflächen und Untertitel über das Bild zeichnet, halten Sie Text auch aus dem unteren Fünftel heraus.

Schrift

Größen sind die size der Schriftart als Anteil der kurzen Seite.

EbeneGrößeBei 1080
Display: der Aufhänger, das eine große Wort7–12 %76–130 px
Headline5–7 %54–76 px
Fließtext, Bildunterschriften5–6,7 %54–72 px
Labels, Kleingedrucktes3,5–4,5 %38–49 px
Nichts, was gelesen werden sollunter 3 %32 px
  • Abstufungen: Zwei Ebenen in einem Frame unterscheiden sich um mindestens das 1,25-fache; bei weniger wirken sie eher wie ein Fehler denn wie eine Hierarchie.
  • Zeilen: Höchstens 42 Zeichen und höchstens zwei Zeilen für alles, was während Bewegungen gelesen wird. Ein Aufhänger hat sechs Wörter oder weniger.
  • Schriftarten: Eine Familie in zwei weit auseinanderliegenden Strichstärken (fett für Display, normal für Fließtext). Eine zweite Familie nur, wenn sie deutlich kontrastiert: eine Serifenschrift oder eine nichtproportionale Schrift neben einer serifenlosen.
  • Kontrast (WCAG-Verhältnis, aus der relativen Leuchtdichte der beiden Farben): mindestens 4,5:1 für Fließtext, Bildunterschriften und Labels und mindestens 3:1 in Display-Größe. Über Filmmaterial oder einem Foto ändert sich das Verhältnis in jedem Frame, daher geben Sie dem Text einen eigenen Hintergrund: eine Pille, einen Balken oder einen Schatten.

Zurückhaltung

  • Eine Idee pro Einstellung, mit Platz drumherum. Ein Frame, der in Teilen gelesen werden muss, sind zwei Einstellungen.
  • Drei Farben: ein Hintergrund, eine Tintenfarbe und ein Akzent. Der Akzent markiert jeweils eine Sache; eine zweite Verwendung stiehlt der ersten ihr Gewicht.
  • Eine fokussierte Bewegung gleichzeitig, plus höchstens eine langsame Umgebungsdrift darunter.
  • Effekte dienen dem Briefing. Glühen, Glitches, chromatische Aberrationen, Verwackler, Linsenreflexe und Partikelausbrüche gehören in einen Trailer, der danach verlangt; in einer Anzeige oder einem Erklärvideo wirken sie wie Rauschen.
  • Kein erfundenes Chrom. Ecklabels, Timecodes, Frame-Zähler, „REC“-Markierungen und HUD-Rahmen werden nur eingefügt, wenn das Briefing danach verlangt.
  • Reales Material statt Platzhalter. Verwenden Sie die Screenshots, das Filmmaterial und die Marke aus dem Briefing; eine von Hand nachgezeichnete Produkt-UI wirkt neben der echten falsch.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Verwandte Skills