SKG TK 二创 API
FastAPI 后端,跑 yt-dlp + ffmpeg + ASR/翻译/文案改写 + MiniMax 配音管线。
启动
cd api
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # 按需填 LLM_API_KEY / MINIMAX_API_KEY
uvicorn main:app --host 127.0.0.1 --port 4291
不要在长下载、抽帧、音频处理时带 --reload 跑后端;reload 会等待后台任务结束,表现为端口还在但新请求卡住。
路由
GET /health— 健康检查 + 配置状态POST /jobs{url}— 创建 job,后台下载源视频,视频就绪后可手动解析或提取音频GET /jobs/{id}— 当前状态 + 产物POST /jobs/{id}/transcribe— 触发音频提取 + ASR + 翻译 + SKG 文案改写;配置 MiniMax 后生成配音。前端 Audio 节点提供“提取音频 / 重新提取音频”按钮,可与抽帧并行,不自动触发GET /jobs/{id}/video.mp4— 原视频GET /jobs/{id}/audio.wav— 拆轨后的原始音频,供前端底部音频条生成波形GET /jobs/{id}/audio-script.mp3— 改写文案的 MiniMax 配音GET /jobs/{id}/frames/{i}.jpg— 第 i 张关键帧(0-9)
Mock 模式
未设 LLM_API_KEY 时,转录走本地 mock,便于 UI 联调;未设 MINIMAX_API_KEY 时只生成改写文案,不生成配音文件。
依赖
ffmpeg系统二进制(拆轨 / 抽帧)yt-dlp系统二进制(也可走 Python 包)- OpenAI 兼容 LLM 网关(ASR / 翻译 / 文案改写)
- MiniMax T2A HTTP(改写文案配音,使用
MINIMAX_API_KEY)