delivery-video-plugin
lumos-789/delivery-video-plugin
Turn a feature that actually runs into a trustworthy delivery demo video: real screen recordings, edge-tts narration with word-clock subtitles, a self-contained ffmpeg pipeline, and a deterministic quality gate (spec, audio, loudness, black/freeze/silence scans) that refuses to pass a fake or broken demo. Preflight and artifact verification included. Requires Python 3.9+, ffmpeg/ffprobe on PATH, and `pip install edge-tts Pillow`; narration calls the public edge-tts endpoint.
Install
dsh plugin --profile web add github:lumos-789/delivery-video-pluginREADME
delivery-video
A skill plugin that turns a feature that actually runs into a trustworthy delivery demo video — real screen recordings, synthesized narration, word-synced subtitles, and a deterministic quality gate that refuses to pass a fake or broken demo.
Most "AI demo videos" are stitched from static screenshots, mock pages or stale recordings. This plugin enforces the opposite discipline: every segment must point at a real recording with a traceable time range, the last shot must end on a verified result state, and the artifact must pass a hard gate (resolution/fps/codec, audio presence, loudness, black frames, freeze frames, bitrate density) before anything is posted. The uploaded file is always the gated file, bound by SHA256.
What it does
- Verify first, record second — the workflow requires evidence that the current version really runs (git SHA, tickets, request IDs) before any recording.
- episode.json recipe — each segment binds one real take + time range + one narration line + optional crop/case chip.
- Self-contained renderer —
render.pysynthesizes narration via edge-tts (word-boundary clocks), times each segment to its narration (0.3x–3x speed clamp), draws the label chip and word-synced subtitles, concatenates, loudness-normalizes to −14 LUFS, and runs the built-in quality gate. Output:screen_demo.mp4(1920×1080, 30fps, h264+AAC),timeline.json, cover/preview frames,quality_gate/report.json. - Fail-loud checks —
preflight.pyvalidates the recipe before rendering (structure, intervals, crops, browser-recording evidence, TTS cache contracts, narration red lines);verify_delivery.pyverifies the finished artifact, gate binding and optional independent visual review afterwards. - Attachment gate —
render.py gateruns the same hard checks on any mp4 before it goes into a ticket, chat or customer channel.
Prerequisites
python33.9+ffmpegandffprobeon PATHpip install edge-tts Pillow
Side effects (disclosed for review)
- Network: narration synthesis calls the public edge-tts (Microsoft Cognitive Services) endpoint; no other network access.
- Files: writes only inside the build directory you pass in (
tts/cache, per-segment clips, final mp4, gate reports). - Commands: runs
ffmpeg/ffprobelocally; the skill never uploads, publishes or deletes anything by itself.
Quick start
- Record real takes of the feature with your usual tool (macOS
Cmd+Shift+5, OBS, or a scripted browser screencast — see the skill's recording reference). - Create
build/screen_demo-<slug>/episode.json(copyexamples/episode.example.json). - Run the three scripts:
python3 <skill>/scripts/preflight.py build/screen_demo-myfeature
python3 <skill>/scripts/render.py render build/screen_demo-myfeature
python3 <skill>/scripts/verify_delivery.py build/screen_demo-myfeature
Suggested trial prompt after install: "用 delivery-video 把这个项目刚完成的功能录成一段 90 秒交付演示视频" — the skill will walk verification, storyboard, recording guidance, recipe assembly, render and gating.
License
MIT © Lumos-789
Related plugins
auto-claude-code-research-in-sleep
wanshuiyin/auto-claude-code-research-in-sleep
archify
tt-a1i/archify
dsh-web (dsh-skill-explorer)
zhu1090093659/dsh-web
dsh-web-ui (dsh-skill-explorer)
zhu1090093659/dsh-web-ui