back
loading skill details...
从Markdown脚本一键生成9:16竖版短视频,支持TTS配音、字幕烧录与画面同步,适合个人内容创作者。
---
name: "lh-video-gen-tool-free"
description: "从Markdown脚本一键生成9:16竖版短视频,支持TTS配音、字幕烧录与画面同步,适合个人内容创作者。"
license: Proprietary
allowed-tools: read exec
compatibility: "Requires LLM with tool-use capability"
metadata:
displayName: "竖版视频生成免费版"
version: "1.0.0"
summary: "从Markdown脚本一键生成9:16竖版短视频,支持TTS配音、字幕烧录与画面同步,适合个人内容创作者。"
tags:
- "视频生成"
- "短视频"
- "TTS"
- "字幕"
- "内容创作"
source: "SkillHub"
converted_at: "2026-07-22T17:58:36"
---
# 竖版视频生成免费版
## 概述
竖版视频生成免费版帮助个人内容创作者从Markdown脚本一键生成9:16竖版短视频。工具采用"以图定音"的核心思路:每段脚本的画面说明生成字幕卡片图,每段口播文案生成TTS配音,每张图展示时长等于对应音频时长,实现音画天然同步。
本版本面向个人用户,提供基础的单视频生成能力,适合短视频平台内容创作。
## 核心能力
### 脚本解析
- 支持Markdown格式脚本,用`---`分隔各段
- 每段包含`画面`、`口播`、`字幕`三个字段
- 自动提取分段内容并按顺序处理
**输入**: 用户提供脚本解析所需的指令和必要参数。
**处理**: 按照skill规范执行脚本解析操作,遵循单一意图原则。
**输出**: 返回脚本解析的执行结果,包含操作状态和输出数据。
### TTS配音
- 默认使用`zh-CN-YunxiNeural`音色
- 支持自定义语速(如+10%、-10%)
- 可替换为任意TTS工具(通过命令模板)
**输入**: 用户提供TTS配音所需的指令和必要参数。
**处理**: 按照skill规范执行TTS配音操作,遵循单一意图原则。
**输出**: 返回TTS配音的执行结果,包含操作状态和输出数据。
### 画面生成
- 自动将字幕内容渲染为9:16图片
- 支持使用预制图片跳过截图步骤
- 图片命名规则:`slide_01.png`、`slide_02.png`...
**输入**: 用户提供画面生成所需的指令和必要参数。
**处理**: 按照skill规范执行画面生成操作,遵循单一意图原则。
**输出**: 返回画面生成的执行结果,包含操作状态和输出数据。
### 视频合成
- 使用FFmpeg合成视频片段
- 支持字幕烧录
- 输出标准MP4格式
**输入**: 用户提供视频合成所需的指令和必要参数。
**处理**: 按照skill规范执行视频合成操作,遵循单一意图原则。
**输出**: 返回视频合成的执行结果,包含操作状态和输出数据。
**能力覆盖范围**:本skill的核心能力覆盖以下场景关键词:脚本一键生成、竖版短视频、字幕烧录与画面同、适合个人内容创作、竖版视频生成免费、版帮助个人内容创、作者从、以图定音、核心思路、画面说明生成字幕、卡片图、口播文案生成、音画天然同步、Use、when、需要视频处理、音频编辑、媒体转换、配音生成时使用、不适用于版权受保、护的媒体内容处理、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
## 使用场景
### 场景一:知识科普短视频
需求:教育博主需要将知识点制作成竖版短视频。
```bash
# 编写脚本 script.md
# ---
# ## 开场
# **画面**:知识标题卡片
# **口播**:大家好,今天我们来学习一个有趣的知识点。
# **字幕**:今日知识点\n一分钟速览
# 生成视频
python3 generate.py script.md -o output.mp4
```
### 场景二:产品介绍视频
需求:独立开发者为一款应用制作介绍视频。
```bash
# 使用自定义TTS音色与语速
python3 generate.py product-intro.md \
-o product.mp4 \
-v zh-CN-XiaoxiaoNeural \
-r +5%
```
### 场景三:使用预制图片
需求:已有设计好的图片,只需配音与合成。
```bash
# 使用预制图片(跳过Chrome截图)
python3 generate.py script.md \
--images-dir ./my-slides \
-o output.mp4
```
## 快速开始
### 依赖详情
```bash
# 系统依赖
# FFmpeg:视频合成
brew install ffmpeg # macOS
# 或
sudo apt install ffmpeg # Linux
# Chrome:HTML截图(使用预制图片时可跳过)
# 自动检测系统Chrome路径,或设置环境变量:
export CHROME_PATH="/path/to/chrome"
```
### Step 2:编写脚本
创建 `script.md` 文件:
```markdown
---
#
## 开场
**画面**:欢迎页面,显示标题
**口播**:大家好,欢迎来到今天的分享。
**字幕**:欢迎观看\n今日主题
---
## 内容
**画面**:知识点卡片
**口播**:今天我们要学习的核心内容是这个重要概念。
**字幕**:核心概念详解
---
## 结尾
**画面**:感谢页面
**口播**:感谢观看,我们下期再见。
**字幕**:感谢观看\n下期再见
```
### Step 3:生成视频
```bash
python3 generate.py script.md -o output.mp4
```
#
## 示例
### 命令行参数
```text
python3 generate.py <脚本路径> [选项]
选项:
-o, --output 输出MP4路径(默认:tmp/video-output.mp4)
-v, --voice TTS音色(默认:zh-CN-YunxiNeural)
-r, --rate 语速(默认:+0%,如+10%、-10%)
-w, --width 视频宽度(默认:1080)
--height 视频高度(默认:1920,9:16)
--images-dir 使用已有图片目录,跳过Chrome截图
--tts-command 自定义TTS命令模板
--keep-temp 保留临时文件
--no-subs 不烧录字幕
```
### 自定义TTS命令
```bash
# 替换为任意TTS工具
python3 generate.py script.md \
--tts-command "my-tts {text} -o {output} -v {voice} -r {rate}"
```
占位符说明:
- `{text}`:口播文案
- `{output}`:输出路径
- `{voice}`:音色
- `{rate}`:语速
### 视频参数配置
```python
# 默认配置
video_config = {
"width": 1080,
"height": 1920, # 9:16竖版
"voice": "zh-CN-YunxiNeural",
"rate": "+0%",
"output": "tmp/video-output.mp4",
"burn_subs": True,
"keep_temp": False
}
```
## 最佳实践
### 脚本编写技巧
| 技巧 | 说明 | 示例 |
|------|------|------|
| 分段清晰 | 每段聚焦一个要点 | 用`---`明确分隔 |
| 口播简洁 | 单段口播不超过30秒 | 避免过长导致图片展示过久 |
| 字幕精炼 | 字幕比口播更简短 | 提取关键词而非完整句子 |
| 画面描述具体 | 明确画面应展示什么 | "标题卡片+渐变背景" |
### 音色选择建议
```bash
# 中文音色推荐
-v zh-CN-YunxiNeural # 男声,沉稳(默认)
-v zh-CN-XiaoxiaoNeural # 女声,活泼
-v zh-CN-YunyangNeural # 男声,专业
-v zh-CN-XiaoyiNeural # 女声,温柔
# 语速调整
-r +10% # 稍快,适合节奏明快的内容
-r -10% # 稍慢,适合教学讲解
```
### 工作流程
1. 编写Markdown脚本,规划分段
2. 运行生成命令
3. 脚本解析:提取各分段内容
4. TTS生成:每段口播生成MP3
5. 图片生成:每段字幕生成9:16图片
6. 视频合成:每张图+对应音频合成片段
7. 拼接输出:合并所有片段为最终MP4
## 常见问题
### Q1: 生成视频时Chrome截图失败?
A: 检查Chrome是否已安装,或通过`CHROME_PATH`环境变量指定路径。也可使用预制图片(`--images-dir`)跳过截图步骤。
### Q2: TTS配音不正常?
A: 默认TTS需要网络连接。检查网络是否正常。也可通过`--tts-command`替换为本地TTS工具。
### Q3: 视频画面与音频不同步?
A: 本工具采用"以图定音"设计,每张图展示时长等于对应音频时长,天然同步。如遇不同步,检查是否有手动修改过临时文件。
### 已知限制
A: 免费版支持单视频生成,默认配置。不支持批量生成、自定义模板、多语言混排等高级功能。如需批量处理请使用PRO版。
### Q5: 如何保留临时文件用于调试?
A: 使用`--keep-temp`参数,生成过程中的图片、音频、片段将保留在临时目录中,便于排查问题。
- 当前为免费版本,如需完整功能请升级到付费版获取全部能力
## 依赖说明
### 运行环境
- **Agent平台**: 支持SKILL.md规范的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- **操作系统**: Windows / macOS / Linux
- **Python**: 3.8+
### 第三方依赖
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|:-------|:-----|:---------|:---------|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
| FFmpeg | 系统工具 | 必需 | brew/apt安装 |
| Chrome | 浏览器 | 截图必需 | 系统自带或下载 |
| TTS服务 | 服务 | 必需 | 默认Edge TTS或自定义 |
### API Key 配置
- 本skill基于Markdown指令规范驱动,无需额外API Key
- TTS服务如使用云端API,需按对应服务商文档配置
- 可通过`--tts-command`替换为本地TTS工具,无需API Key
### 可用性分类
- **分类**: MD+EXEC(纯Markdown指令+脚本执行能力)
- **说明**: 基于Markdown指令驱动Agent执行视频生成任务,通过Python脚本与FFmpeg实现视频合成
- **免费版限制**: 单视频生成、默认配置、无批量处理、无自定义模板
## 错误处理
| 错误场景 | 原因 | 处理方式 |
|---------|------|---------|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
don't have the plugin yet? install it then click "run inline in claude" again.