把小说章节自动“做成短视频”的一条龙工具:爬取章节内容 → LLM 生成分镜 → 文生图 + TTS 配音 → FFmpeg 合成竖屏视频;可选发布到抖音。
- Web 管理界面(HTMX + Go
net/http),支持导入小说、触发单章生成、查看进度 - Pipeline:
- Step 1:LLM 生成分镜脚本
- Step 2:按场景生成图片与配音
- Step 3:合成竖屏视频(
1080x1920) - Step 4:可选发布到抖音(需配置 token)
- Go:
1.22+(需要CGO_ENABLED=1,用于sqlite3) - FFmpeg:用于视频合成
- Python:用于
edge-tts(如果你选择/使用 Edge TTS 引擎) -(可选)Just:使用justfile一键安装与启动
just install
just start启动后访问:http://localhost:8080
make deps
make run默认读取 configs/config.yaml,也可以通过参数指定:
./bin/scribe-vision-2 -config configs/config.yaml配置文件支持环境变量替换(例如 ${LLM_API_KEY})。示例字段见 configs/config.yaml。
常用环境变量(按需配置):
LLM_API_KEYIMAGERY_API_KEYTTS_APP_ID/TTS_TOKENDOUYIN_CLIENT_KEY/DOUYIN_CLIENT_SECRET
建议做法:创建本地配置 configs/config.local.yaml(已在 .gitignore 忽略),并用 -config 指定它。
- 数据库:默认
data/scribe.db - 生成物:默认写入
data/images、data/audio、data/videos
- 运行时报
sqlite3编译失败:检查是否安装了编译工具链(Linux 通常需要gcc/g++)。 - 合成视频失败:确认
ffmpeg可用(make check会提示)。 - 首次爬取可能会下载 Chromium(用于无头浏览器抓取),等待完成即可。
main.go:服务入口与依赖组装internal/web/:Web UI 与 APIinternal/pipeline/:生成流水线internal/store/:SQLite 存储configs/:配置文件static/:前端静态资源
本项目基于 MIT License 开源,详见 LICENSE。