Open-VoiceCanvas 是一个功能强大的多语言语音合成与克隆平台,基于 Next.js 14 构建。它集成了多种顶尖的 AI 语音技术,为用户提供高质量的文字转语音 (TTS)、语音克隆、语音设计以及播客和故事生成服务。
- 多引擎支持: 集成 OpenAI TTS、AWS Polly、MiniMax 等顶级语音合成引擎。
- 多语言覆盖: 支持全球 50+ 种语言和方言。
- 语音克隆: 上传音频样本即可快速克隆声音,打造个性化语音助手。
- 语音设计: 自定义音色参数(语速、音调、音量等),创造独一无二的声音。
- 播客生成: 自动生成多人对话形式的播客音频。
- 故事创作: 智能生成配音故事,支持长文本处理。
- 实时预览: 支持文本到语音的实时流式播放和音频可视化波形展示。
- 用户认证: 完善的注册/登录系统,支持 GitHub、Google 第三方登录。
- 订阅支付: 集成 Stripe 支付系统,支持按月/年订阅及按量付费模式。
- 配额管理: 精确的字符数和克隆声音数量配额控制。
- 国际化: 原生支持多语言界面 (i18n)。
- 框架: Next.js 14 (App Router)
- 语言: TypeScript
- 样式: Tailwind CSS
- 组件库: shadcn/ui, Radix UI
- 动画: Framer Motion
- 状态管理: React Hooks
- 数据库: PostgreSQL (适配 Neon/Supabase)
- ORM: Prisma
- 认证: NextAuth.js (Auth.js)
- 支付: Stripe API
- 邮件: Resend
- 存储: AWS S3 / Vercel Blob (用于音频存储)
- OpenAI: TTS 模型
- AWS: Polly 服务
- MiniMax: 中文语音优化
- DeepSeek / Qwen: 文本处理与生成支持
- Node.js 18+
- PostgreSQL 数据库
- 各类 API Keys (OpenAI, AWS, Stripe 等)
git clone https://github.com/ItusiAI/Open-VoiceCanvas.git
cd Open-VoiceCanvasnpm install
# 或者
yarn install
# 或者
pnpm install复制 .env.example 文件为 .env,并填入你的 API 密钥和配置信息:
cp .env.example .env关键配置项说明:
DATABASE_URL: PostgreSQL 连接字符串NEXTAUTH_SECRET: NextAuth 加密密钥OPENAI_API_KEY: OpenAI 接口密钥STRIPE_SECRET_KEY: Stripe 支付私钥AWS_ACCESS_KEY_ID: AWS 访问密钥 (用于 Polly)
使用 Prisma 同步数据库结构:
npx prisma generate
npx prisma db pushnpm run dev访问 http://localhost:3000 查看应用。
Open-VoiceCanvas/
├── app/ # Next.js App Router 页面与 API
│ ├── api/ # 后端 API 路由
│ ├── auth/ # 认证相关页面
│ ├── cloning/ # 语音克隆页面
│ ├── design/ # 语音设计页面
│ ├── podcast/ # 播客生成页面
│ └── ...
├── components/ # React 组件
│ ├── ui/ # 基础 UI 组件 (shadcn)
│ └── ... # 业务组件
├── lib/ # 工具函数与库配置
│ ├── i18n/ # 国际化配置
│ ├── prisma.ts # 数据库客户端
│ └── ...
├── prisma/ # 数据库 Schema 与迁移
├── public/ # 静态资源
└── scripts/ # 维护与工具脚本
npm run dev: 启动开发服务器npm run build: 构建生产版本npm run start: 运行生产版本npm run lint: 代码风格检查npm run db:analyze: 数据库分析脚本npm run check:translations: 检查翻译缺失
欢迎提交 Pull Request 或 Issue!
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 提交 Pull Request
MIT © ItusiAI
