| name | editorial-card-video |
|---|---|
| description | Build paper editorial-card videos from a content-spec: Swiss editorial layout, warm paper ground, Guizang-style live media cards, real BGM, HyperFrames render, and QC gates. Use for 纸感信息卡, 编辑风视频, 归藏风视频, editorial card video, or content-spec to 20-24s card video tasks. |
Editorial Card Video
Use this skill to turn a structured content-spec.json into a 20-24s "归藏纸感编辑风信息卡视频": warm paper background, Swiss editorial typography, dense magazine cards, right-side live media wells, real BGM, and QC evidence.
When To Use
Use this skill when the request asks for:
- 纸感信息卡, 编辑风视频, 归藏风视频, editorial card video, or magazine-style infographic video.
- A content table/spec becoming a short motion video.
- Reusing the accepted editorial-card-infographic pipeline with live card media.
- Producing or updating a HyperFrames project with paper editorial cards plus BGM and QC artifacts.
Do not use this skill for:
- Talking-head overlay cards on top of an existing speaker video. Use
talking-head-recut. - Pure kinetic typography or lower-thirds. Use
motion-graphics. - General long-form video authoring without this paper editorial card language. Use
general-video. - Building a new Guizang card language from scratch. This skill packages the accepted paper-card production pipeline; read
guizang-social-card-skillonly as design provenance when extending card forms.
Inputs
Required:
- A
content-spec.jsonthat followsreferences/content-spec.schema.json.
Recommended:
- Real BGM source or
meta.bgm.mode = "external-window". - Card media clips already prepared as dense-keyframe MP4s.
- A clear topic with six beats that map to the six scene blueprints.
Portable defaults are included:
examples/family-ai-assistant.content-spec.jsonexamples/template-library.content-spec.jsonassets/card_media_pack/assets/components/
Workflow
- Read the request and choose the content-spec.
- Validate text against
references/content-spec-guide.md. - Map the six scenes to
references/scene-blueprints.md. - Generate Guizang live cards:
node scripts/generate_guizang_live_cards.mjs \ --out-dir "$OUT/guizang_cards" \ --live-media-dir assets/card_media_pack
- Generate the editorial-card HyperFrames project:
node scripts/generate_editorial_card_video.mjs \ --spec content-spec.json \ --out-dir "$OUT" \ --project "$OUT/project" \ --output "$OUT/final/editorial_card_video_1920x1080.mp4" \ --live-cards-dir "$OUT/guizang_cards/output" \ --render
- If using a real music bed, set
meta.bgm.mode = "external-window"and pass a validmeta.bgm.file. The script normalizes the window and muxes it into the final. - Run QC gates from
references/qc-checklist.md. - Deliver the final MP4, MD5, ffprobe, contact sheets, MAD metrics, and any known residual risk.
Gate Discipline
A render is not complete until these are checked:
- Card live media is actually moving; static poster contact is not enough.
- Right-side card-region MAD should land around the accepted reference band, about
14for the live media card region, unless the content deliberately uses quiet footage. - Faces in live wells are complete; use
face-topor another focus mode instead of center-cover when needed. - Video wells have dense keyframes; use GOP around
12for seekable media. - Wells sit inside the intended paper/card bounds with no placeholder blocks.
- Scene dwell and entry rhythm match the current recipe values. Treat these as "current values" because active recipe tuning may update them.
- BGM is real or explicitly accepted fallback; lavfi fallback is only for smoke tests.
Key References
Load these when doing production work:
references/style-language.mdfor measured colors, type sizes, spacing, and paper texture language.references/scene-blueprints.mdfor the six-scene flow.references/card-anatomy.mdfor the three Guizang live-card shapes.references/content-spec-guide.mdfor schema and copy-length boundaries.references/live-media-rules.mdfor focus, dense-keyframe, and well-alignment rules.references/qc-checklist.mdfor quantitative gates.references/lessons.mdfor known failure modes and fixes.
Scripts
scripts/generate_guizang_live_cards.mjs: renders the six reusable Guizang live-card MP4s and keyframes from skill-local media.scripts/generate_editorial_card_video.mjs: builds the HyperFrames project, renders the full editorial-card video, prepares BGM, and muxes audio.scripts/build_live_media_qc.py: compares moving card regions against a reference crop.scripts/build_stage_c_qc.py: builds source-vs-sample scene contact sheets.scripts/build_guizang_card_midframe_contact.py: checks live-card focus and subject crop.scripts/build_guizang_layout_density_contact.py: compares card layout density against reference crops.scripts/build_dwell_well_tuning_qc.py: measures accepted video-well ratios and dwell timing.scripts/build_stackfix_qc.py: verifies stack settle-vs-end position and bounded anchor drift.scripts/build_cardface_integrity_qc.py: verifies edge typography, top-title zones, and fallback/video layer consistency.scripts/build_croute_threeway_contact.py: compares native Guizang, script C-route, and reference crops.
All scripts accept explicit input/output directories. Do not hardcode (internal evidence) or user-home paths in production calls.
Dependencies
Required:
- HyperFrames CLI available through
npx hyperframes. ffmpegin PATH.- Node.js ESM runtime.
- Python 3 with
Pillowandnumpyfor QC scripts.
Design provenance:
guizang-social-card-skillsupplied the accepted visual language for the live-card subsystem. It is not a runtime dependency for this skill snapshot; read it when extending or inventing new card forms, not for ordinary production renders.
Worked Examples
See examples/README.md for accepted sample paths, MD5s, and the two portable content-spec files. The sample videos are indexed by path instead of copied into the skill because they are large binary deliverables.
