All skills
hoodini avatar

/yuv-video-director

@f412198

Yuval's all-in-one AI video pipeline. Turns an idea/script into a finished, on-brand MP4 by orchestrating HyperFrames (HTML→deterministic video render), Lottie (branded motion graphics), ManimCE (math / neural-network / concept animations), and a transcribe→approve caption flow — all wrapped in the YUV.AI Neon Phoenix brand via a frame.md. Use whenever Yuval wants to make, edit, or explain something as a video: promo, explainer, launch, social reel, "make a video about X", "explain X as a video", "neural network animation", "turn this into a video", captioned tutorial, 16:9 or 9:16. Triggers: video, explainer, promo, reel, manim, lottie, hyperframes, animation, "make a video", "explain ... as a video", מצגת וידאו, סרטון, הסבר וידאו. Routes each beat to the right engine, wraps in brand, self-verifies, and renders.

Use this Skill: https://skilld.dev/gh/hoodini/ai-agents-skills/yuv-video-director

This session only. Nothing lands on disk.

referencesteaser-explainer.md

≈1.2k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Teaser-Explainer — the cinematic "Netflix promo" formula

For "explain X" requests that must feel like a TV/film teaser (FOMO, dopamine, cliffhanger) — not a lecture. Worked example shipped: the 46.3s "מה זה רשת נוירונים" teaser.

The arc (timing table from the shipped cut)

0.0–6.4   COLD OPEN     5 statement slams, ~1.1s each, hard cuts + glitch/flash stabs.
                        Question → number → image-beat (lottie) → counter-question → 3-word answer
                        ("המוח שלך?" / "86 מיליארד נוירונים." / brain lottie / "ומכונה?" / "בדיוק. באותה. דרך.")
6.4–21.9  CONTENT BURSTS word-slam ("נוירון.") → 4s of the BEST manim moment → slam ("רשת.") → 4s →
                        slam ("אימון.") → 5s. Each burst gets ONE short caption pill.
21.9–29.4 FACE-OFF      split screen: brain lottie | machine lottie, alternating lines
                        (cyan vs pink), then the unifier ("אותו רעיון.") in gradient.
29.4–34.6 FOMO MONTAGE  3 real-life examples, 1.3s each, text + small lottie, hard cuts
                        ("הטלפון מזהה פנים / הרופא מאבחן מוקדם / המכונית רואה"), then "וזה רק ההתחלה."
34.6–40.8 CLIFFHANGER   soft dip → SLOW (the contrast IS the drama): question → hero lottie +
                        thesis line → final open question alone on screen ("מה עוד היא תלמד?")
40.8–end  OUTRO         phoenix burst + name + brand + links, fast, fade.

Rules: statements ≥0.9s (readable) ≤1.4s (urgent); stabs on every hard cut EXCEPT into the cliffhanger (dip instead); zoom-drift (scale 1→1.05 linear) on every held statement; one idea per cut.

Manim BURSTS, not playthroughs

Never play an explainer scene start-to-finish in a teaser. Scrub the rendered MP4 (ffmpeg frames → Read), pick the 4–5 most ACTIVE seconds per chapter, and window them with data-media-start:

<video class="mv clip" data-start="7.1" data-duration="4.0" data-media-start="7.4"
       data-track-index="0" src="assets/WhatIsNN.mp4" muted playsinline></video>

Sequential windows can share track 0. Introduce each window with a 0.7s word-slam. Bundled scene: ../assets/what_is_nn.py (neuron → 4-6-6-2 network → training/LOSS, 34.5s, no LaTeX, Segoe UI, brand palette).

Content-synced transparent Lottie beats (the core craft)

The Lotties must ILLUSTRATE WHAT IS BEING SAID, exactly when it is said — that is the whole point.

  1. Read the transcript like an editor; list the spoken concepts and their timestamps.
  2. Hard-code DIRECTOR BEATS (start, end, lottie, label, position) — don't keyword-auto-match blindly.
  3. Overlays are FULLY TRANSPARENT: no chip, no border — just the animation + label with filter: drop-shadow(...) for separation. Give the thesis concept a bigger, longer "hero" beat.
  4. Every animation must be PERSISTENT + CONTINUOUS (icon always drawn, accent motion loops) so any window reads. Generator with 6 production-grade examples (WhatsApp-collapse, decode-beam, eye-read, ghost-line hero, orb-extract, brain-fire): ../assets/gen_content_lotties.py → JSONs in assets/.
  5. VERIFY transparency: render a test grid over an ODD-colored page (#2d1a3a) — any opaque canvas bg shows instantly. Sample 3 timestamps; every animation must read in all three.

The seek-modulo fix (CRITICAL gotcha)

HyperFrames' lottie adapter seeks every player to COMPOSITION time. A lottie whose total duration is shorter than the section's start time clamps to its last frame (often invisible). Wrap every loadAnimation:

const L=(id,p)=>{
  const a=lottie.loadAnimation({container:document.getElementById(id),renderer:"svg",loop:true,autoplay:false,path:p});
  const o=a.goToAndStop.bind(a);
  a.goToAndStop=(v,f)=>{const d=a.getDuration(false)*1000;o(f?v:(d>0?v%d:v),f);};
  window.__hfLottie.push(a);
};

Deterministic (pure modulo). Use it in EVERY composition — it is harmless when not needed.

Teaser music (synthesized, royalty-free)

No VO → the music drives. numpy-synthesize: kick every ~0.46s through the rush sections; 40Hz bass hits on every hard cut; 1.8s noise+sweep risers ending AT each drop; kill the kick + quiet high-tremolo drone during the cliffhanger (duck the pad ~0.45); swell into the outro; mix data-volume ~0.5. Working generator pattern: the project's gen_music_teaser.py.

Self-audit before delivery (run it like an editor)

Extract 10+ frames across the cut and Read them: every slam readable? every lottie PRESENT (missing asset = silent failure — run validate, it catches the 404 as a console error)? stabs on cuts? cliffhanger slow and clean? outro has logo+name+links? Fix and re-render until yes.

Source: SKILL.md on GitHub

1 warning3mo3 checks · Risk SAFE
  • Gen Agent Trust Hub3mo

    The yuv-video-director skill is a comprehensive and well-architected video production pipeline for AI agents. It orchestrates HyperFrames, Lottie, and ManimCE to create professional-grade video content with synchronized captions and branded motion graphics. The skill follows standard practices for asset management, using helper scripts to fetch legitimate resources like fonts and libraries from trusted sources. No malicious patterns, obfuscation, or data exfiltration risks were identified during the analysis.

  • Socket3mo

    No alerts

  • Snyk3mo

    Risk: MEDIUM · 1 issue

Signed by skilld at f412198. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 days ago.

Steadyupdated 4 months ago

README badge

README badge for hoodini/ai-agents-skills/yuv-video-director