원클릭으로
polaris-ai
把文案/主题做成「带 AI 高清插画」的故事短视频并输出 MP4。完整链路:文案→分镜脚本→角色设定→MiniMax 生图(人物+环境,跨镜一致)→MiniMax 配音→ffmpeg 运镜/字幕/BGM 合成。竖屏 9:16 / 横屏 16:9 / 方图 1:1。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
把文案/主题做成「带 AI 高清插画」的故事短视频并输出 MP4。完整链路:文案→分镜脚本→角色设定→MiniMax 生图(人物+环境,跨镜一致)→MiniMax 配音→ffmpeg 运镜/字幕/BGM 合成。竖屏 9:16 / 横屏 16:9 / 方图 1:1。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
把文案或文档做成有设计感的幻灯片。一套引擎两种交付:自包含可翻页的网页 deck(.html),或像素级还原主题的 .pptx。内置 17 套主题(借力 open-design),键盘翻页/演讲者备注/打印 PDF。
壹伴式排版 + 两段直送公众号草稿。和「壹伴」插件同思路——你只产出干净的语义正文 HTML(h1/h2/p/blockquote/ul/strong…,零内联样式),样式交给随包的壹伴脚本在 CloakBrowser 里按「约定的风格」一键套上。v5 两段解耦:第一段先把纯文字走「粘贴通道」稳稳送进草稿并保存确认(ProseMirror 事务认账,根治"看着传了却存不进"),第二段再套主题样式;样式失败文字也已落地,随时可用 restyle 模式对已存草稿原地换主题/换背景。填标题、保存草稿,绝不自动发布。当用户要把公众号稿子排版、一键排版、把内容传进公众号后台、或想给已传草稿换风格时触发。
把文案、课件、口播稿一键做成 16:9 网页演示视频并输出 MP4。完整链路:文案→口播稿→网页开发→MiniMax 配音→逐帧对齐录屏→MP4。
把需求或文案做成一个有设计感、响应式的网站 HTML(自包含单文件)。借力 open-design 风格:玻璃导航 + 渐变大标题 + bento 功能区 + 数据 + 价格卡 + CTA + 页脚,17 套主题,滚动揭示动效。
| id | polaris-story-video |
| name | Polaris 故事视频(AI 生图 · 旁白 · 一键成片) |
| description | 把文案/主题做成「带 AI 高清插画」的故事短视频并输出 MP4。完整链路:文案→分镜脚本→角色设定→MiniMax 生图(人物+环境,跨镜一致)→MiniMax 配音→ffmpeg 运镜/字幕/BGM 合成。竖屏 9:16 / 横屏 16:9 / 方图 1:1。 |
| source | official |
| author | Polaris |
| created_at | 0 |
把一段文案或一个主题,做成带 AI 生成插画的故事短视频(抖音/视频号竖屏式),输出 MP4。
和「课件视频」的根本区别:课件视频是"网页 PPT → 录屏";故事视频是 "AI 生成人物+环境高清图 → Ken-Burns 运镜 → 旁白+字幕+BGM → 合成"。核心是真生图。
| 工具 | 用途 | 安装 |
|---|---|---|
| Node.js ≥ 18 | 脚本运行 | Polaris 内置 |
| ffmpeg / ffprobe | 运镜·字幕·混音·合成 | 缺则按提示装;无需 Playwright/浏览器 |
| MiniMax key | 生图 image-01 + 配音 T2A | Polaris 供应商坞自动提供(同一个 key) |
node ~/Polaris/skills/polaris-story-video/scripts/install-deps.mjs
整条链路只认一份 storyboard.json(角色 + 分镜)。schema 见 references/STORYBOARD.md,要点:
{
"title": "标题",
"aspect": "9:16", // 9:16 竖屏 | 16:9 横屏 | 1:1 方图
"style": "<美术风格后缀,拼进每条生图 prompt,保证全片画风统一>",
"voice": "audiobook_male_1", // 全局默认音色(每镜可覆盖)
"speed": 1.0, // 全局默认语速
"language_boost": "Chinese",
"bgm": "/绝对路径/bgm.mp3", // 可空
"bgmVolume": 0.18,
"burnSubs": true, // 是否烧录字幕
"characters": [
{ "id": "hero", "name": "小满",
"prompt": "8岁中国女孩,圆脸,齐刘海黑色短发,红色棉袄,眼神明亮",
"ref": "assets/characters/hero.png" }
],
"shots": [
{ "id": 1,
"narration": "从前,在雪山脚下的小村庄里,住着一个叫小满的女孩。",
"subtitle": "雪山脚下的小村庄", // 可空=用 narration
"image_prompt": "雪山脚下的中国北方小村庄,清晨,炊烟,小满站在木屋门口张望,电影感广角",
"characters": ["hero"], // 第一个角色作为人物参考(跨镜一致)
"motion": "zoom-in", // zoom-in|zoom-out|pan-left|pan-right|static
"voice": "female-tianmei", "speed": 1.0,
"image": "assets/shots/1.png", "audio": "assets/audio/1.mp3" }
]
}
人物一致性:每个角色先生成一张「设定图」(characters[].ref),之后该角色出现的分镜把它作为
subject_reference 传给生图,使其跨镜长相一致。MiniMax 单图主体参考一次一人——一个镜头里多个角色时,
把主角放 characters[0](作参考),其余角色靠 image_prompt 文字描述。
narration)、字幕(subtitle)、画面描述(image_prompt,
含角色动作+环境+镜头语言)、出场角色、运镜(motion)。旁白节奏按目标时长配。分镜脚本.md —— 给人看的:角色表 + 逐镜「旁白/画面/运镜」。storyboard.json —— 给脚本跑的机器数据(上面的 schema)。把 UI 选定的 画幅 / 美术风格 / 音色 / 语速 / 语言 / 字幕 / BGM 如实写进 storyboard.json, 不要自行更改用户的选择。
node ~/Polaris/skills/polaris-story-video/scripts/run.mjs \
--storyboard=<storyboard.json 绝对路径> \
--output=<成片 mp4 绝对路径>
run.mjs 依次跑:生图(minimax-image.mjs --batch) → 配音(minimax-tts.mjs --batch) →
合成(compose.mjs)。也可分步单独跑(便于只重做某一步,加 --force 覆盖重算):
node scripts/minimax-image.mjs --batch --storyboard=<sb> # 角色设定图 + 逐镜高清图
node scripts/minimax-tts.mjs --batch --storyboard=<sb> # 逐镜旁白 mp3
node scripts/compose.mjs --storyboard=<sb> --output=<mp4> # 运镜+字幕+BGM 合成
生成的图落在 storyboard 同目录的 assets/characters/ 与 assets/shots/,旁白在 assets/audio/,
便于你逐张检查、对不满意的镜头删图后 --force 重生。
| 内容 | 推荐风格关键词 |
|---|---|
| 治愈/童话 | 温暖治愈系绘本插画,柔和光线,水彩质感 |
| 国风/历史 | 中国水墨动画风,留白,写意,淡彩 |
| 励志/金句 | 电影感写实,戏剧光影,暗调,大气 |
| 科普/未来 | 半写实 3D,皮克斯质感,明亮 |
| 悬疑/奇幻 | 暗黑奇幻插画,浓郁色彩,体积光 |
全片只用一种风格写进 style,逐镜 image_prompt 只描述内容不重复风格词,画风才统一。
| 现象 | 解决 |
|---|---|
| 生图/配音报 key 错 | 供应商坞启用 MiniMax,或设 MINIMAX_API_KEY |
| 同一角色每镜长相不一 | 确认该角色有 ref 设定图、且分镜 characters[0] 指向它 |
| 字幕乱码/不显示 | 装中文字体;可设 STORY_SUB_FONT="思源黑体" 等已装字体名 |
| 找不到 ffmpeg | 跑 install-deps.mjs;或设 env FFMPEG/FFPROBE |
| 想保留中间产物排查 | 设 STORY_KEEP_TMP=1,.compose/ 不清理 |
scripts/install-deps.mjsscripts/run.mjsscripts/minimax-image.mjs 配音:scripts/minimax-tts.mjs 合成:scripts/compose.mjsreferences/STORYBOARD.md