这是一个基于 FunASR 轻量化版本的 Web 演示界面,提供音频转文本功能。
- 📁 文件上传: 支持多种音频格式 (WAV, MP3, M4A, FLAC, OGG, WebM)
- 🎤 实时录音: 浏览器内录音并实时转换
- 🚀 GPU 加速: 支持 CUDA GPU 加速推理
- 🌍 多语言: 支持中文、英文、日文、韩文、粤语
- 📱 响应式: 适配桌面和移动设备
- 🎨 美观界面: 现代化 UI 设计
cd web_demo
python start_server.py
- 安装依赖
pip install flask flask-cors
- 启动服务器
cd web_demo
python app.py
- 打开浏览器
访问 http://localhost:5000
- Python 3.8+
- FunASR 轻量化版本
- Flask 和 Flask-CORS
- 现代浏览器(支持 Web Audio API)
- 点击"选择音频文件"按钮
- 选择音频文件(支持 WAV, MP3 等格式)
- 点击"开始转换"按钮
- 等待转换完成,查看结果
- 点击"开始录音"按钮(首次使用需授权麦克风)
- 对着麦克风说话
- 点击"停止录音"按钮
- 系统自动转换并显示结果
- 模型选择:
- Paraformer (中文): 适合中文语音识别
- SenseVoice (多语言): 支持多种语言
- 计算设备:
- CPU: 使用 CPU 计算(较慢但兼容性好)
- GPU (CUDA): 使用 GPU 加速(需要 CUDA 支持)
音频转文本接口
请求参数:
audio: 音频文件 (multipart/form-data)
model: 模型名称 (可选,默认 paraformer-zh)
device: 计算设备 (可选,默认 cpu)
响应格式:
{
"success": true,
"text": "转换后的文本",
"model": "paraformer-zh",
"device": "cpu"
}
获取可用模型列表
健康检查接口
- 后端: Flask + FunASR
- 前端: HTML5 + CSS3 + JavaScript
- 音频处理: Web Audio API + MediaRecorder API
- UI 框架: 原生 CSS(无依赖)
- Chrome 60+
- Firefox 55+
- Safari 11+
- Edge 79+
- 麦克风权限: 录音功能需要浏览器麦克风权限
- HTTPS: 在生产环境中建议使用 HTTPS
- 文件大小: 默认限制音频文件最大 100MB
- GPU 支持: GPU 模式需要安装 CUDA 版本的 PyTorch
Q: 无法录音?
A: 检查浏览器麦克风权限,确保使用 HTTPS 或 localhost
Q: 转换失败?
A: 检查音频格式是否支持,确保 FunASR 正确安装
Q: GPU 不工作?
A: 确保安装了 CUDA 版本的 PyTorch,检查 GPU 驱动
Q: 服务器启动失败?
A: 检查端口 5000 是否被占用,确保依赖已安装
服务器日志会实时显示在控制台,包含:
MIT License
欢迎提交 Issue 和 Pull Request!
如有问题,请查看 FunASR 项目文档或提交 Issue。