Femoon/tts-azure-web
TTS Azure Web 是一个 Azure 文本转语音(TTS)网页应用,可以在本地或者云端使用你的 Azure Key 一键部署。TTS Azure Web is an Azure Text-to-Speech (TTS) web application. It allows you to run it locally or deploy it with a single click using your Azure Key.
TTS Azure Web – 快速概览
是什么 – 一个轻量级、可自托管的 Web UI,可调用 Microsoft Azure 的文本转语音服务。您可以输入或粘贴文本,通过图形界面或原始 SSML 标记调整语音参数(语言、风格、速度、音量等),并下载生成的音频文件。
为何重要 – Azure 的神经网络 TTS 是一个高质量的商业语音合成引擎。该项目消除了认证、调用 API 和构建 UI 所需的样板代码,使开发者或爱好者可以本地实验 Azure TTS,或通过一键式 Vercel 部署快速上线。
核心功能(README 中描述)
- 语音自定义 – 选择语音、语言、风格和角色。
- 音频控制 – 调整速度、语调和音量。
- 双模式编辑器 –
- 普通模式:使用 UI 滑块和下拉菜单。
- SSML 模式:直接编辑语音合成标记语言以实现精细控制。
- 导入/导出 SSML – 保存配置并稍后重新加载。
- 音频导出 – 下载生成的语音为音频文件。
- 状态持久化 – 通过 Zustand 与持久化中间件将偏好设置保存在
localStorage中。 - 国际化 – 支持英文和简体中文界面,自动检测区域设置。
- 响应式设计 – 在桌面和移动设备上均能正常工作。
技术栈(来自 README)
| 层级 | 技术 |
|---|---|
| 前端框架 | Next.js 15(App Router) |
| UI 库 | HeroUI(NextUI v2) + Tailwind CSS v4 + Framer Motion |
| 语言 | TypeScript(React 19) |
| 状态管理 | Zustand 与持久化中间件 |
| 国际化 | Next.js 内置 i18n |
| 语音后端 | Microsoft Azure Cognitive Services Speech SDK |
| 打包 / 部署 | Docker、Vercel 或普通 Node/Yarn |
快速开始(README 步骤摘要)
- 获取 Azure 凭证 – 在 Azure 中创建语音服务,并记下
SPEECH_KEY和SPEECH_REGION。 - 在项目根目录创建
.env.local:SPEECH_KEY=your_azure_key SPEECH_REGION=your_azure_region # 可选 NEXT_PUBLIC_MAX_INPUT_LENGTH=4000 NEXT_TELEMETRY_DISABLED=1 - 安装依赖 – 项目使用 Yarn Classic:
npm i -g yarn # 如果尚未安装 yarn - 本地运行 – 开发服务器(仅限 localhost):
打开yarn dev # 或在局域网中暴露 yarn lan-devhttp://localhost:3000。 - 构建并运行 – 用于生产就绪的本地运行:
yarn build yarn start
部署选项
- Vercel(一键部署) – 点击 README 中的“Deploy with Vercel”按钮;将
SPEECH_KEY和SPEECH_REGION作为环境变量提供。 - Docker – 构建并运行容器:
docker build -t tts-azure-web . docker run -p 3000:3000 -e SPEECH_KEY=... -e SPEECH_REGION=... tts-azure-web - 本地生产环境 – 设置环境变量文件后,使用 Yarn 的构建/启动命令。
典型使用场景
- 语音功能 UI 组件的快速原型设计。
- 内容创作 – 为视频、播客或电子学习生成旁白或配音。
- SSML 测试 – 无需编写代码即可实验 Azure 的 SSML 功能。
- 教育演示 – 在课堂或工作坊中展示云语音合成的工作原理。
项目健康与维护
- 代码检查与 CI – ESLint(零警告策略)、Prettier、Husky 提交前钩子、Commitlint 和 Dependabot 安全补丁。
- Node 版本 – 需要 Node 22+;Yarn 1.22.22。
- 许可证 – MIT,允许个人或商业用途。
更多信息
- 在线演示 – https://tts.femoon.top
- 源代码 – https://github.com/Femoon/tts-azure-web
- 问题追踪 – 项目仓库中链接的 GitHub Issues 页面。
TL;DR: TTS Azure Web 是一个开箱即用的 Next.js 应用,将 Azure 的神经网络 TTS API 包装在简洁的 UI 中,支持简单滑块和完整 SSML 编辑,并可通过 Vercel、Docker 或本地 Node 一键部署。
相关
- 项目
- 项目
- 项目