159 lines
3.7 KiB
Markdown
159 lines
3.7 KiB
Markdown
# ViGent2 - 数字人口播视频生成系统
|
||
|
||
基于 **LatentSync 1.6 + EdgeTTS** 的开源数字人口播视频生成系统。
|
||
|
||
> 📹 上传静态人物视频 → 🎙️ 输入口播文案 → 🎬 自动生成唇形同步视频
|
||
|
||
---
|
||
|
||
## ✨ 功能特性
|
||
|
||
- 🎬 **唇形同步** - LatentSync 1.6 驱动,512×512 高分辨率 Diffusion 模型
|
||
- 🎙️ **TTS 配音** - EdgeTTS 多音色支持(云溪、晓晓等)
|
||
- 📱 **一键发布** - Playwright 自动发布到抖音、小红书、B站等
|
||
- 🖥️ **Web UI** - Next.js 现代化界面
|
||
- 🚀 **性能优化** - 视频预压缩、健康检查缓存
|
||
|
||
## 🛠️ 技术栈
|
||
|
||
| 模块 | 技术 |
|
||
|------|------|
|
||
| 前端 | Next.js 14 + TypeScript + TailwindCSS |
|
||
| 后端 | FastAPI + Python 3.10 |
|
||
| 唇形同步 | **LatentSync 1.6** (Latent Diffusion, 512×512) |
|
||
| TTS | EdgeTTS |
|
||
| 视频处理 | FFmpeg |
|
||
| 自动发布 | Playwright |
|
||
|
||
---
|
||
|
||
## 📂 项目结构
|
||
|
||
```
|
||
ViGent2/
|
||
├── backend/ # FastAPI 后端
|
||
│ ├── app/
|
||
│ │ ├── api/ # API 路由
|
||
│ │ ├── services/ # 核心服务 (TTS, LipSync, Video)
|
||
│ │ └── core/ # 配置
|
||
│ ├── requirements.txt
|
||
│ └── .env.example
|
||
├── frontend/ # Next.js 前端
|
||
│ └── src/app/
|
||
├── models/ # AI 模型
|
||
│ └── LatentSync/ # 唇形同步模型
|
||
│ └── DEPLOY.md # LatentSync 部署指南
|
||
└── Docs/ # 文档
|
||
├── DEPLOY_MANUAL.md # 部署手册
|
||
├── task_complete.md
|
||
└── DevLogs/
|
||
```
|
||
|
||
---
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 1. 克隆项目
|
||
|
||
```bash
|
||
git clone <仓库地址> /home/rongye/ProgramFiles/ViGent2
|
||
cd /home/rongye/ProgramFiles/ViGent2
|
||
```
|
||
|
||
### 2. 安装后端
|
||
|
||
```bash
|
||
cd backend
|
||
python -m venv venv
|
||
source venv/bin/activate # Windows: venv\Scripts\activate
|
||
pip install -r requirements.txt
|
||
cp .env.example .env
|
||
```
|
||
|
||
### 3. 安装前端
|
||
|
||
```bash
|
||
cd frontend
|
||
npm install
|
||
```
|
||
|
||
### 4. 安装 LatentSync (服务器)
|
||
|
||
详见 [models/LatentSync/DEPLOY.md](models/LatentSync/DEPLOY.md)
|
||
|
||
```bash
|
||
# 创建独立 Conda 环境
|
||
conda create -n latentsync python=3.10.13
|
||
conda activate latentsync
|
||
|
||
# 安装依赖并下载权重
|
||
cd models/LatentSync
|
||
pip install -r requirements.txt
|
||
huggingface-cli download ByteDance/LatentSync-1.6 --local-dir checkpoints
|
||
```
|
||
|
||
### 5. 启动服务
|
||
|
||
```bash
|
||
# 终端 1: 后端 (端口 8006)
|
||
cd backend && source venv/bin/activate
|
||
uvicorn app.main:app --host 0.0.0.0 --port 8006
|
||
|
||
# 终端 2: 前端 (端口 3002)
|
||
cd frontend
|
||
npm run dev -- -p 3002
|
||
```
|
||
|
||
---
|
||
|
||
## 🖥️ 服务器配置
|
||
|
||
**目标服务器**: Dell PowerEdge R730
|
||
|
||
| 配置 | 规格 |
|
||
|------|------|
|
||
| CPU | 2× Intel Xeon E5-2680 v4 (56 线程) |
|
||
| 内存 | 192GB DDR4 |
|
||
| GPU | 2× NVIDIA RTX 3090 24GB |
|
||
| 存储 | 4.47TB |
|
||
|
||
**GPU 分配**:
|
||
- GPU 0: 其他服务
|
||
- GPU 1: **LatentSync** 唇形同步 (~18GB VRAM)
|
||
|
||
---
|
||
|
||
## 🌐 访问地址
|
||
|
||
| 服务 | 地址 |
|
||
|------|------|
|
||
| 视频生成 | http://服务器IP:3002 |
|
||
| 发布管理 | http://服务器IP:3002/publish |
|
||
| API 文档 | http://服务器IP:8006/docs |
|
||
|
||
---
|
||
|
||
## 📖 文档
|
||
|
||
- [LatentSync 部署指南](models/LatentSync/DEPLOY.md)
|
||
- [手动部署指南](Docs/DEPLOY_MANUAL.md)
|
||
- [开发日志](Docs/DevLogs/)
|
||
- [任务进度](Docs/task_complete.md)
|
||
|
||
---
|
||
|
||
## 🆚 与 ViGent 的区别
|
||
|
||
| 特性 | ViGent (v1) | ViGent2 |
|
||
|------|-------------|---------|
|
||
| 唇形同步模型 | MuseTalk v1.5 | **LatentSync 1.6** |
|
||
| 分辨率 | 256×256 | **512×512** |
|
||
| 架构 | GAN | **Latent Diffusion** |
|
||
| 视频预处理 | 无 | **自动压缩优化** |
|
||
|
||
---
|
||
|
||
## 📄 License
|
||
|
||
MIT
|