Receber por email
← Voltar para o catálogo

chanjing-one-click-video-creation

用户输入选题或工作流,自动生成完整短视频成片(文案、分镜、数字人口播与 AI 画面混剪);调用 Chanjing Open API 与同仓库子技能脚本。

17estrelas
Atualizado há 7 meses

Ver no GitHub ↗

Como adicionar

/plugin marketplace add chanjing-ai/chan-skills

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/chanjing-one-click-video-creation/svg)](https://www.skillteca.com.br/skills/chanjing-one-click-video-creation)

Skills relacionadas

Ver todas de Automação →

Alerta por categoria

Receba novas skills de Automação toda segunda

1 email curto, só com as skills novas de Automação. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

一键式视频渲染器

功能说明

一键调用 Chanjing API 完成口播 TTS、数字人合成、文生视频与本地封装;集成 ffmpeg / ffprobe 做拼接、转码与轨对齐。编排与安全细则见 §3–§8 与 templates/;成片命令见 §5。

运行依赖

必须可用的二进制或等价封装(具体调用方式见 §5、run_render.py):

  • ffmpeg:拼接、转码、封装
  • ffprobe:时长、分辨率、旋转等元数据(与数字人轨对齐)
  • chan-skill(或同仓库下直接 python 调用子技能脚本):驱动 chanjing-tts、chanjing-video-compose、chanjing-ai-creation 等 CLI

环境变量与机器可读声明

  • 环境变量键名与说明:manifest.yaml(environment 段)及本文
  • 键名、默认值、凭据模型、二进制、合规 permissions、clientPermissions、agentPolicy:manifest.yaml

§3.2 表格为配合 run_render.py 阅读的说明;若与 manifest.yaml 冲突,以 manifest.yaml 为准。

使用命令

  • ClawHub(slug 以注册表为准,常与技能包名一致):clawhub run chanjing-one-click-video-creation
  • 本仓库直连:python scripts/run_render.py --input workflow.json --output-dir ./outputs/run1(在技能目录或配合 SKILLS_DIR / CHANJING_ONE_CLICK_VIDEO_SKILLS_ROOT / CHAN_SKILLS_DIR 使用)

速查

| 内容 | 位置 | |------|------| | 工作流、duration_sec、null/合并、选题校验 | §4.1 | | 切段、奇偶镜、scenes[]、scene_count/video_type;首镜 voiceover ≤20 字(硬) | storyboard_prompt.md 篇首「文本切段」;script_prompt.md 首镜口播;video_brief_plan.md | | 渲染技术、状态、partial/success、硬约束 | render_rules.md §1–§4;§7、§8 | | ref_prompt / 文生提示词 | storyboard_prompt.md + history_storyboard_prompt.md;§4.2 指针 | | 请求体字段与默认 | §6 | | run_render.py、子进程 CLI | §5 | | 安全、凭据、信任边界、策略 | manifest.yaml + §3.1(§3.1 不重复 manifest 表格) | | 环境变量、二进制、副作用、落盘 | §3.2 |

冲突:渲染实现以 render_rules.md 为准;ref_prompt 条文以 storyboard_prompt.md / history_storyboard_prompt.md 为准(§4.2 汇总指针)。run_render.py 只实现 §5 + render_rules.md,不增业务规则。执行:手工编排子 skill、仅 run_render、或混用。

1. 做什么

  1. 选题或全文 → video_plan、口播全文、分镜
  2. TTS:整段优先;超长按分镜少批合并(细则与字数见 render_rules.md §3·C.4)
  3. 按镜切音频
  4. 数字人分镜:chanjing-video-compose(音频驱动)
  5. AI 分镜:ref_prompt → chanjing-ai-creation → 与镜内音频合成
  6. 封装:对齐公共数字人轨 → ffmpeg concat → 本地 mp4

2. 何时用 / 何时不用

| | | |--|--| | 适合 | 要成片;口播与画面混剪;用户明确要生成短视频 | | 不适合 | 仅文案/标题;未要视频;只剪已有素材 |

3. 前置条件

  • 鉴权:chanjing-credentials-guard;凭据路径与字段见 manifest.yaml、§3.1;无凭证时子进程可 open_login_page.py
  • Plan/Script/分镜:本地 Agent 逻辑,无需外部 LLM API key(本 skill 必选路径不依赖外部 LLM)
  • 本机二进制与仓库布局:§3.2(ffmpeg / ffprobe、SKILLS_DIR 等)
  • 数字人与音色:勿用环境变量或仓库内缓存文件保存跨任务的「默认」audio_man / person_id / figure_type。每次任务在 workflow.json 根级显式填写;由 Agent 按 video_plan(如 video_type)、口播人设与选题语义,调用 list_voices.py 与 list_figures.py(--source 取 common / customised 等与本次任务一致)选型后写入;audio_man 宜与所选形象的 audio_man_id 一致。
  • 公共数字人选型(禁止「只取列表前几项」):须用 list_figures.py --source common --json 拉取候选(必要时增大 --page-size 或翻页,覆盖足够条目),在候选内逐项对比后再定稿:name、figures[].type(→ figure_type)、figures[].width/height(画幅与 D.1c 一致)、audio_man_id、audio_name(若有)与 video_plan/口播人设(性别、气质、行业、年龄感)是否匹配。默认偏好年轻、有活力的形象:名称或 audio_name 中含青年/少女/小哥哥/小姐姐/学生/元气/青春/年轻等正向信号时优先;仅当选题或用户明确要求成熟、权威、中老年等气质时,再选对应人设。定制源 customised 同样对比 name、width/height、audio_man_id 等,勿未经比较直接取页首。

3.1 安全、凭据与信任边界

环境变量与二进制以 manifest.yaml 与 §3.2 为据。审阅时可对照 description 与 manifest.yaml(含 agentPolicy)。

  • 能力与管道:步骤级说明见 §1;run_render 职责与子进程见 §5(不在此重复链路)。
  • 主凭据 / 路径 / primaryEnv:见 manifest.yaml;路径与写回行为另见 §3.2 持久性表「凭据状态」及 CHANJING_OPENAPI_CREDENTIALS_DIR(兼容 CHANJING_CONFIG_DIR)。
  • 敏感与合规:勿回显完整密钥、勿将 credentials.json 提交版本库;权限建议 0700 / 0600(配置脚本尽量设置)。
  • 信任与出站行为:HTTPS、按返回 URL 拉取媒体、--output-dir 落盘等细节见 §3.2「典型副作用」与持久性表;须自行判断是否信任蝉镜主机与链接。
  • 浏览器:缺凭证时的 webbrowser.open / open_login_page.py 见 §3.2 同表。
  • Agent 策略:manifest.yaml 中 agentPolicy(非 always、不改其它 skill)。

3.2 运行时契约(环境变量、二进制、副作用与落盘)

与 scripts/run_render.py 及同仓库子 skill 行为对齐;与篇首 YAML、manifest.yaml 一致。若与其它产品文档并列,以本仓库源码、manifest.yaml 与本文为准。

环境变量(常见)

命名以仓库根 合规规则.md §3 为准;下列推荐名在代码中生效,旧名仍兼容(见 manifest.yaml 与各子 skill 说明)。

| 变量 | 必需性 | 默认 / 说明 | |------|--------|-------------| | CHANJING_OPENAPI_BASE_URL | 可选 | 默认 https://open-api.chanjing.cc;兼容 CHANJING_API_BASE。 | | CHANJING_OPENAPI_CREDENTIALS_DIR | 可选 | 默认 ~/.chanjing;credentials.json 所在目录;兼容 CHANJING_CONFIG_DIR。 | | SKILLS_DIR | 视布局而定 | 平台保留;含 skills/chanjing-tts 等的仓库根。未设时依次尝试 CHANJING_ONE_CLICK_VIDEO_SKILLS_ROOT、CHAN_SKILLS_DIR,再由 run_render.py 自脚本路径向上四级推断。 | | CHANJING_ONE_CLICK_VIDEO_REF_PROMPT_MAX_CHARS | 可选 | 默认 8000;整段 ref_prompt 上限;兼容 AI_VIDEO_PROMPT_MAX_CHARS。 | | CHANJING_ONE_CLICK_VIDEO_CREATION_MODEL_CODE | 可选 | 缺省文生视频 model_code;兼容 AI_VIDEO_MODEL。 |

说明:部分外部文档中的 FIRST_DIGITAL_HUMAN_MAX_CHARS(首个数字人分镜 voiceover 字数上限)等变量,当前本仓库的 run_render.py 未读取;以后若源码增加对应 os.environ,应同步更新本表。

外部二进制

| 二进制 | 必需性 | 用途 | |--------|--------|------| | ffmpeg | 跑一键成片 run_render.py 时必需 | 拼接、转码、封装音视频等。仅编排纯 API、不执行本渲染脚本时可不装。 | | ffprobe | 同上 | 读取媒体分辨率、时长、旋转元数据等,用于与数字人轨对齐。 |

执行脚本时的典型副作用(按类)

| 类型 | 说明 | |------|------| | 出站 HTTPS | 蝉镜 Open API(CHANJING_OPENAPI_BASE_URL / 兼容 CHANJING_API_BASE)、以及接口/CDN 返回的 video_url / 音频 URL 等素材拉取。 | | 本地文件 | run_render.py --output-dir 下常见:final_one_click.mp4、workflow_result.json、work/(中间音频、分段视频、concat 列表等);具体以当次命令与 templates/render_rules.md 为准。 | | 子进程 | ffmpeg / ffprobe;run_render 通过 subprocess 调用同仓库下 skills/chanjing-tts、chanjing-video-compose、chanjing-ai-creation 等目录中的 Python CLI。 | | 浏览器 | 凭据缺失或引导登录时,鉴权链可能 webbrowser.open 或执行 chanjing-credentials-guard 的 open_login_page.py(与各 skill 的 _auth.py 行为一致)。 |

持久性变更范围与用户可控性

以下对本 skill 而言属预期内副作用;可通过路径与环境变量控制写入位置,而非隐式污染无关目录。

| 类别 | 写入什么 | 典型位置 | 用户如何控制 | |------|----------|----------|----------------| | 凭据状态 | 经配置写入的 app_id / secret_key、刷新后的 access_token、 expire_in 等 | CHANJING_OPENAPI_CREDENTIALS_DIR/credentials.json(默认 ~/.chanjing/credentials.json;兼容 CHANJING_CONFIG_DIR) | 设置推荐名或旧名;或迁移/删除该文件;勿将秘钥提交版本库。 | | 一键成片工件 | final_one_click.mp4、workflow_result.json、work/ 等 | 由 run_render.py --output-dir 指定(常见为某次任务下的 outputs/<任务名>/) | 选用明确的 --output-dir;任务结束后按需保留或删除该目录。 | | 其它下载类脚本(子 skill) | 合成结果等到本地 | 各 skill 的 download_result.py 等:默认多在当前工作目录下 outputs/<产品线>/,或 --output 绝对路径 | 在预期 cwd 下执行,或始终传 --output;详见对应 skill 的 SKILL.md。 | | 临时/过程文件 | TTS 合并、切段、上传前缓存等 | 多在上述 output-dir 下的 work/ 或脚本约定子目录 | 随输出目录一并管理。 |

凭据文件:路径与读写语义见上表 凭据状态 行;首次配置见 skills/chanjing-credentials-guard/SKILL.md。

4. 规则汇编

4.1 工作流编排

合并:null = 不覆盖。顺序:默认铺底 → 非 null 覆盖 → 布尔/整数校正。字段默认见 §6;未在表中展开的缺省由 run_render.py(及子进程)按实现与环境变量读取(不含音色/数字人:audio_man、person_id/avatar_id、figure_type 仅来自 workflow.json,见 §3)。

duration_sec:策划参考,非 ffmpeg 上限。成片时长以 TTS+ffprobe 为准。scene_count 见 video_brief_plan.md;切段与 AI 条数依实测与字幕轴(render_rules.md §3·C.5)。禁止为凑时长裁已定稿口播(除非用户要求)。

选题:去空白 <5 字、占位串(如「你好」「test」)拒收;可扩写;严格模式模糊则失败。

步骤:1) Plan → video_brief_plan(败则全败;模板见 video_brief_plan.md)2) Script(hook / 首段与首镜对齐:≤20 字硬上限,见 script_prompt.md)3) Storyboard:语义切分;storyboard_prompt.md(首个分镜 voiceover 同上硬上限);非当代 history_storyboard_prompt.md;DH chanjing-video-compose,AI chanjing-ai-creation;TTS/多段 AI/mux render_rules.md §3、§5 4) Render:render_rules.md §3(含 §3·C.6)、§4(表 4–6);ref_prompt 质检见 storyboard_prompt.md / history_storyboard_prompt.md(§4.2);重试/partial render_rules.md §1 5) 成功:render_rules.md §1

仅渲染:run_render.py + `

Compartilhar X LinkedIn