Skip to content

Repository files navigation

VideoForge · AI 产品宣传视频工作台

基于 Tauri v2 + React 19 构建的桌面应用,利用 LLM 和 FFmpeg 实现从素材到产品宣传视频的全流程自动化。

技术栈

  • 桌面框架: Tauri v2 (Rust 后端)
  • 前端: React 19 + TypeScript + Vite
  • UI: Ant Design v5
  • 状态管理: Zustand
  • 动画: GSAP 3.x
  • 视频处理: FFmpeg (sidecar)
  • 帧捕获: headless_chrome
  • 数据库: SQLite (rusqlite)
  • 播放器: Plyr

开发环境

前置要求

  • Node.js >= 18
  • Rust >= 1.75
  • FFmpeg (可选,系统安装或自动下载)

安装依赖

npm install

启动开发服务器

npm run tauri dev

构建生产版本

npm run tauri build

功能流程

  1. 新建任务 → 设置视频尺寸、时长等参数
  2. 上传素材 → 上传图片,为每张添加说明
  3. 生成 HTML 帧 → LLM 分析素材,拆分生成多个带动画的 HTML 帧
  4. 预览 & 微调 → 每帧可独立预览,支持 AI 对话式微调
  5. 生成字幕 → LLM 为每帧生成解说词,按时间轴对齐
  6. TTS 配音 → AI 语音合成朗读音频
  7. 合成视频 → FFmpeg 渲染帧、转场、混音、编码 MP4
  8. 预览导出 → 播放器预览 + 导出高清 MP4

项目结构

├── src/                  # React 前端
│   ├── components/       # 通用组件
│   ├── pages/           # 页面组件
│   ├── workspace/       # 工作台步骤组件
│   ├── stores/          # Zustand 状态管理
│   ├── types/           # TypeScript 类型
│   ├── styles/          # 主题和样式
│   └── utils/           # 工具函数
├── src-tauri/           # Rust 后端
│   ├── src/
│   │   ├── commands/    # Tauri 命令
│   │   └── render/      # 渲染引擎
│   └── Cargo.toml
└── package.json

License

This project is dual licensed under:

  1. MIT License(基础开源条款)
  2. Commons Clause(附加禁止商用约束)

许可规则

✅ 允许:个人学习、教学、非营利研究、免费非盈利分享、代码修改。 ❌ 禁止:所有商业相关使用行为,包含:

  • 企业生产环境部署、商业化SaaS服务;
  • 付费售卖、代部署、付费技术咨询、商业外包;
  • 集成至付费闭源产品、企业付费内部系统;
  • 任何通过本项目直接/间接产生营收的场景。

商用授权渠道

若企业需要商用授权,请联系作者获取商业付费许可,洽谈授权方案。

About

本项目原理很简单,就是使用AI分镜设计,每一个镜头由HTML完成,最后拼接成视频文件

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages