lanshu-create-ai-presenter-video README

The project's README from github.com/cclank/lanshu-create-ai-presenter-video. As one markdown file: README.md.

lanshu-create-ai-presenter-video

Codex Skill Provider Neutral Validate Skill License: MIT Python 3.9+ FFmpeg Required GitHub stars

一个面向 Codex 的通用数字人视频制作 Skill。输入主题或文案与授权人物图后,它会组织文案、配音、人物生成、口型校准、字幕与关键词动效、剪辑、渲染和质量验收。

它按能力选择当前环境可用的工具,项目源码不绑定服务商、模型名称或私有接口。

最少需要提供什么

  1. 一个主题或一份完整文案。
  2. 一张经过授权、包含清晰成年人物的参考图。

可选输入包括声音样本、屏幕录制、图片、B-roll、品牌素材、目标平台、时长、横竖屏、风格、水印和结尾引导。

安装

git clone https://github.com/cclank/lanshu-create-ai-presenter-video.git \
  ~/.codex/skills/lanshu-create-ai-presenter-video

安装后的 Skill 路径:

~/.codex/skills/lanshu-create-ai-presenter-video

文件结构

lanshu-create-ai-presenter-video/
├── SKILL.md
├── README.md
├── agents/
│   └── openai.yaml
├── assets/
│   └── job.template.json
├── references/
│   ├── generation.md
│   ├── editing.md
│   └── qa-recovery.md
└── scripts/
    ├── init_job.py
    ├── preflight.py
    └── finalize_delivery.sh

三份参考文档分别负责什么

Codex 只在进入对应阶段时读取相关文档,减少上下文占用。

快速使用

在对话中直接说:

使用 $lanshu-create-ai-presenter-video,把这份文案和人物图做成一条 16:9、30 秒、有实时字幕的数字人讲解视频。

也可以先初始化标准任务目录:

SKILL_DIR=~/.codex/skills/lanshu-create-ai-presenter-video

python3 "$SKILL_DIR/scripts/init_job.py" \
  --job-dir ~/Videos/my-presenter-video \
  --presenter-image ~/Pictures/presenter.png \
  --topic "视频主题" \
  --duration 60 \
  --aspect 9:16 \
  --rights-confirmed \
  --adult-presenter-confirmed

随后查看并补全 job.json 中的人工检查与远程上传许可,再运行:

python3 "$SKILL_DIR/scripts/preflight.py" ~/Videos/my-presenter-video/job.json

运行环境

核心工作方式

主题或文案 + 授权人物图
        ↓
锁定文案与完整配音
        ↓
低成本人物试片
        ↓
生成连续数字人主素材
        ↓
按同一条音频时间轴剪辑
        ↓
添加字幕、关键词动效和封面
        ↓
口型、人物、声音与画面验收
        ↓
输出母版、分享版和 QA 报告

完整配音是全片的时间基准。人物视频、字幕、镜头、关键词与转场都按照这条音频定位,可以减少口型漂移和片段衔接问题。

默认设置

安全和成本边界

开源与隐私

贡献

欢迎通过 Issue 提交使用反馈,也欢迎用 Pull Request 改进工作流、兼容性和质量检查。

lanshu-create-ai-presenter-video (cclank/lanshu-create-ai-presenter-video)

Searching Database…

What is this?This is a Codex Skill that turns a topic or script plus an authorized photo of a person into a full AI presenter video: it writes the script, generates voiceover, creates the character, syncs lips, adds subtitles and keyword animations, edits, renders and runs quality checks.
Is this a standalone app or a Codex add-on?It is a Codex Skill, not a separate app: it plugs into Codex (or any compatible local Skill agent) and picks whatever video, voice and lip-sync capability is available in that environment instead of being tied to one vendor or model.
How do I get it producing a video?Install the Skill into your Codex skills folder, then either tell Codex your topic or script directly in conversation, or initialize a standard job directory first, fill in job.json with the manual checks and upload permissions, and run the pipeline.
What does my environment need before running it?A Codex (or compatible local Skill) agent environment, Python 3.9+, FFmpeg and ffprobe, Bash/jq/awk/sed, and at least one callable video-generation, voice-generation and lip-sync capability in that environment.
What happens if paid video generation keeps failing?After three consecutive failed paid generation attempts, the Skill stops and summarizes the problem instead of retrying endlessly, and it checks for an existing task ID after an interruption to avoid being charged twice.
Does it store my uploaded images or API keys?No. The repository keeps no API keys, access tokens, signed download links or user material, and task reports strip credentials, temporary URLs and absolute file paths before being saved.
Why are the reference docs split into three separate files?generation.md, editing.md and qa-recovery.md each cover one phase (input/voice/character, timeline/editing, and quality checks), and Codex only reads the file for the phase it's currently in, which keeps context usage low.
What does the output video look like by default?Vertical 9:16 at 1080x1920 and 30fps, usually 45-75 seconds for topic-based videos, with a clear opening, 2-4 content beats, a simple closing, and loudness normalized to about -16 LUFS.
How does it keep the character's lips in sync through the whole clip?The full voiceover track is treated as the timing reference for the entire video, and character footage, subtitles, cuts and keyword animations are all aligned to that audio to reduce lip drift and mismatched cuts.
What if I don't have a sample of the presenter's voice?If no authorized voice sample is provided, the Skill falls back to a suitable stock voice instead of cloning one.
Creator
cclank
Size
1.8 MB
Stars
2.7K
Age
1mo
Commits · 90 Days