公众号转视频号:30–40秒完整短版、Edge配音、同步字幕与封面
Design & media
WeChat Article Video
Try itConvert Chinese WeChat public-account articles and supplied images into publish-ready vertical WeChat Channels videos. Use for 公众号转视频、图文转视频、医药或药械招商、企业和产品推荐、视...
What it does
Convert Chinese WeChat public-account articles and supplied images into publish-ready vertical WeChat Channels videos. Use for 公众号转视频、图文转视频、医药或药械招商、企业和产品推荐、视...
The skill document
WeChat Article Video
Produce a complete WeChat Channels package from an article and its images:
video.mp4: 1080x1920, 30 fps, H.264/AACcover.jpg: usable both as frame 0 and as the platform upload covervoiceover.mp3andvoiceover.srtstoryboard.jsonandtimeline.jsonpublish-copy.mdqa-report.jsonandcontact-sheet.jpg
Default to Chinese, 9:16, edge-tts, synchronized burned-in captions, and a visible cover beginning at frame 0. Preserve medical disclaimers and never expand claims beyond the supplied source.
Choose The Production Mode
Choose from the article's purpose, not its word count:
| Mode | Duration | Use |
|---|---|---|
brief | 15-25s | 招商快讯、活动提醒、单一行动 |
compact-standard | 30-40s | 企业/产品推荐的完整信息短版;视频号日更首选 |
standard | 40-75s | 企业入驻、产品推荐、平台宣传; default |
detail | 75-120s | 政策、专题或多产品解读 |
Default enterprise/product recommendations to compact-standard when the user wants a concise WeChat Channels video. Keep standard when the article needs more explanation or a calmer pace. Do not force an enterprise/product recommendation into 15 seconds.
For compact-standard, preserve the key-information matrix while compressing narration:
- company identity plus the strongest date, capital, or scale fact
- material qualification or domain credibility
- every featured product name and dosage form
- each product's main source-supported indication/use
- material specifications when they distinguish the product
- one platform action and the complete required disclaimer
Use “core facts in voiceover + complete key points on screen.” Do not require every visible fact to be spoken. Target 34-38 seconds when an exact 30 seconds would require deleting key information or making text/voice unreadable.
Choose One Renderer
Use one renderer per video. Both consume the same storyboard.json and timeline.json.
- HyperFrames, default: use for one-off daily articles and visually tailored 30-90 second videos. Read the available
hyperframes,hyperframes-core,hyperframes-creative,hyperframes-animation, andhyperframes-cliskills before authoring. Read HyperFrames Creative'shouse-style.mdandvideo-composition.md; they specifically prevent web-card/PPT-looking frames. - Remotion, batch-template option: use when the user explicitly requests Remotion or when a stable React/TypeScript template is being parameterized for repeated batch production. Read
remotion-best-practicesand itsrules/video-layout.mdandrules/subtitles.mdbefore editing Remotion code.
Do not render a single composition through both engines. Do not claim a renderer is used unless the project source and render command actually use it.
Workflow
1. Build A Source Bundle
Create a per-article project and preserve original files:
source/
article.md
images/
notes.md
production/
release/
Copy supplied assets into source/images/; never edit originals in place. Verify every copied file exists, then inspect it visually. Record its subject, crop safety, useful claim, and risks before writing the storyboard. Read references/content-and-compliance.md.
Treat missing or inaccessible supplied images as blocking. Ask the user to reattach them or use an already verified project copy. Do not create a renderable storyboard containing placeholder asset IDs, unverified candidate objects, or paths in temporary WeChat directories.
2. Make An Evidence Map
Extract:
- article objective and one intended viewer action
- company, product, dates, numbers, indications, specifications, and platform claims
- source paragraph for every factual narration sentence
- mandatory disclaimer
- unsupported or illegible details that must not enter the video
Write production/content-brief.json. For medical/pharma content, factual traceability is mandatory.
3. Write The Storyboard Before Code
Read references/storyboard-schema.md and references/layout-system.md. Use 6-8 purposeful scenes for compact-standard and 4-8 for standard. Each scene must define:
- narrative job
- source references
- layout template
- focal asset and intended crop
- on-screen text hierarchy
- caption range
- motion intent
- first meaningful visual deadline
Use these layout templates:
covercompany-profileproduct-herofact-focuscta
Do not repeat the same template for adjacent product scenes without changing composition, focal position, or information structure.
Validate before generating TTS:
python scripts/validate_storyboard.py \
--input production/storyboard.json \
--content-brief production/content-brief.json \
--project-root .
Do not continue when validation reports inaccessible assets, blocked source status, unknown source references, or invalid asset field types.
4. Generate One Continuous Voiceover
Write the complete spoken script to production/voiceover.txt. Keep punctuation deliberate because it controls cadence. Normalize symbols for speech while keeping display text faithful:
1999年may be spoken as一九九九年2mlmay be spoken as二毫升- brand symbols such as
®normally stay on screen but are omitted from speech
Generate one continuous stream so voice, pacing, and loudness remain consistent:
python scripts/edge_tts_generate.py \
--text production/voiceover.txt \
--audio production/voiceover.mp3 \
--subtitles production/voiceover.srt \
--voice zh-CN-XiaoxiaoNeural \
--rate +5%
Use another Edge voice/rate only when the user asks or the article tone clearly requires it. Do not silently switch to a paid TTS provider.
For compact-standard, start between +12% and +20%. Do not exceed +20% merely to hit 30 seconds. If narration still exceeds 40 seconds, remove connective/repeated wording, move supporting facts to on-screen text, preserve all critical claims, and accept 35-38 seconds instead of rushed speech.
5. Let Subtitle Boundaries Drive Timing
Map subtitle entries to scenes in production/scene-map.json, then build the shared timeline:
python scripts/subtitles_to_timeline.py \
--subtitles production/voiceover.srt \
--scene-map production/scene-map.json \
--offset 1.5 \
--tail 0.8 \
--output production/timeline.json
The default 1.5-second lead-in gives the cover a readable silent beat. Place the full voiceover at timeline.audio_start_sec; captions and narration scenes use the shifted timestamps from timeline.json. Never estimate caption timing by character count after real Edge boundaries exist.
6. Author Layout Before Animation
Create the complete static end-state of every scene first. A frame must remain useful with all animation disabled. Then add restrained, seek-safe motion.
Hard layout rules:
- frame 0 is a complete cover, never a black-to-image fade
- main content occupies the visual field; do not leave the lower half unused
- product imagery is usually 60-80% of frame width
- cover headlines are normally 84-108 px at 1080x1920
- scene headlines are normally 72-96 px
- body text is normally 36-48 px; captions 44-54 px
- captions sit in a dedicated safe zone and never cover packaging, QR codes, CTA, or disclaimers
- meaningful scene content is visible within 0.4 seconds
- animation emphasizes existing content; it must not create an initially empty frame
- avoid nested cards, repeated equal cards, tiny UI labels, and generic website layouts
HyperFrames: keep media as direct children of the composition root, start the voiceover at timeline.audio_start_sec, register one paused seekable timeline, use deterministic assets, and run npx hyperframes check.
Remotion: convert seconds to frames with the composition FPS; convert captions to Remotion's Caption type in milliseconds. Use frame-derived interpolate() animation, for timing,/`` for media, and no CSS transitions or CSS animations.
7. Preview And Inspect The Whole Video
Before final render, inspect at least the start, middle, and end of every scene. For HyperFrames use snapshots; for Remotion render stills. Build a contact sheet after rendering:
python scripts/make_contact_sheet.py \
--video release/video.mp4 \
--timeline production/timeline.json \
--output release/contact-sheet.jpg
Reject the layout when:
- a scene looks empty at entry
- the product resembles a thumbnail
- more than roughly one third of the frame is purposeless blank space
- adjacent scenes share the same visual silhouette
- text hierarchy cannot be understood in one second
- captions are tiny or visually detached from the narration
8. Run Delivery QA
Read references/qa.md, then run:
python scripts/qa_video.py \
--video release/video.mp4 \
--timeline production/timeline.json \
--cover release/cover.jpg \
--report release/qa-report.json
QA must confirm:
- video and audio streams begin correctly
- first encoded frame is visible and non-black
- cover is built into the video and exported separately
- dimensions, codec, pixel format, fps, duration, and fast-start are suitable
- captions follow real Edge timing
- every
critical_claim_idis represented in the storyboard and final contact sheet - opening, middle, and closing frames were visually inspected
- medical facts and disclaimer match the article
Do not prepend a still with stream-copy concat. If post-processing is unavoidable, fully re-encode and rerun first-frame QA.
Reference Routing
- Read references/content-and-compliance.md for article compression, evidence mapping, medical copy, and publish copy.
- Read references/layout-system.md before designing any scene.
- Read references/storyboard-schema.md before creating or validating
storyboard.json. - Read references/qa.md before final render and delivery.
Final Handoff
Return links to the MP4 and cover plus resolution, duration, renderer, voice, synchronization status, first-frame verification, and any compliance caveat. Keep editable project files with the release so the next daily article can reuse the design system.
Related skills
Create a vertical WeChat Channels product-display video from a real product photo and confirmed product information. Shape a clear product opening, one detail or use moment, and a clean ending, then prepare the finished product video with a title and publishing copy for WeChat Channels product content, including a new-product showcase video.
Independently turn an article into WeChat Official Accounts compatible Markdown/HTML, present built-in theme choices, and publish to WeChat as a draft or for...
Create a WeChat Channels video cover, WeChat Video Account cover, or WeChat Channels thumbnail from a video topic, title, script, key frame, portrait, product photo, or reference image. This AI video cover maker builds a clear focal visual, a text-safe area, and a channel-consistent cover direction for WeChat Channels videos, creator updates, product explainers, local-business posts, and knowledge content.
Turn Markdown into WeChat Official Account HTML, covers, infographics, and image posts via the md2wechat CLI.
Take existing HTML content (file, URL, or pasted HTML) and publish it directly to WeChat Official Account draft box. No file conversion, no web scraping — ju...