Agent skill · Content & Marketing

render-editorial-motion-podcast

Assemble an editorial-motion podcast-clip ad from a config — a real clipped podcast MP3 carries the narrative while N flat 2-tone editorial-illustration keyframes are animated NOT by generative i2v but by DETERMINISTIC ffmpeg ken-burns (zoompan) + hard cuts (no crossfades, which expose geometric drift), each beat snapped to its spoken line, the real audio muxed, Whisper-driven captions burned only mid-sentence, and closed on a PIL brand end card — never AI-rendered text. This is the FREE deterministic assembly stage (ffmpeg ken-burns + hard concat + audio mux + captions + end card); the real a

gooseworks-aigithub.com/gooseworks-aiGitHub ↗
claude-codecodexcursorMIT
Install
npx skills add gooseworks-ai/goose-skills --skill render-editorial-motion-podcast --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 6
SKILL.md size: 5 KB
Bundled scripts: none
Path: skills/ads/capabilities/render-editorial-motion-podcast/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 1,091
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# render-editorial-motion-podcast Assemble an **editorial-motion podcast-clip** ad from a config: a real clipped podcast audio line carries the whole narrative and every visual beat is timed to the sentence it describes, in a bold flat 2-tone editorial-illustration look ("a New Yorker spot-illustration that moves"). The motion is **not generative video** but deterministic ffmpeg ken-burns on static keyframes, so it reads as a printed page that moves. This capability is that **FREE, deterministic assembly** — the ffmpeg motion, hard-concat, audio mux, caption burn, and PIL end card. `scripts/config.example.json` is the worked example (Klarify "Rat Park", ~40.8s 1080×1920 9:16, 6 beats); `scripts/PIPELINE.md` maps every config block to its source step and `scripts/README.md` documents the free assembly. ## Run This is the **FREE, deterministic** assembly stage — it spends nothing on the motion layer. The paid inputs are separate: the real podcast MP3 is clipped from source (free ffmpeg) with its Whisper word timings, and one editorial-illustration keyframe per beat (chained ref images so cage/character geometry holds) comes from `create-image-fal` (Nano Banana). Given the clipped aud

What's inside
Steps it walks through
  1. Run
  2. Contract (the free assembly)
Ships with 5 files
  • scripts/PIPELINE.md
  • scripts/README.md
  • scripts/config.example.json
  • skill.meta.json
  • tests/smoke-test.md
More from goose-skills
All skills →
About this skill
What does the render-editorial-motion-podcast skill do?

Assemble an editorial-motion podcast-clip ad from a config — a real clipped podcast MP3 carries the narrative while N flat 2-tone editorial-illustration keyframes are animated NOT by generative i2v but by DETERMINISTIC ffmpeg ken-burns (zoompan) + hard cuts (no crossfades, which expose geometric drift), each beat snapped to its spoken line, the real audio muxed, Whisper-driven captions burned only mid-sentence, and closed on a PIL brand end card — never AI-rendered text. This is the FREE deterministic assembly stage (ffmpeg ken-burns + hard concat + audio mux + captions + end card); the real a

How do I install it?

Run `npx skills add gooseworks-ai/goose-skills --skill render-editorial-motion-podcast --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From gooseworks-ai/goose-skills, a repository with 1,091 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going