Sherpa-ONNX 本地离线语音识别与语音合成实战指南
Sherpa-ONNX 本地离线语音识别与语音合成实战指南【免费下载链接】sherpa-onnxSpeech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages项目地址: https://gitcode.com/GitHub_Trending/sh/sherpa-onnxSherpa-ONNX 是一个完全在本地跑完的离线语音识别工具集ASR、TTS、说话人分析、语音增强、VAD 全部装进同一个跨平台 SDK音频从头到尾不出设备。如果你要做实时字幕、车载助手或者需要在医疗、金融这类场景里部署一套本地 ASR它可以直接作为推理引擎用。和按调用计费、录音要先上云的云端 API 不同它把 ONNX 模型直接跑在你的 CPU / NPU 上和单点的 Whisper 脚本、Vosk 相比它在一个库里同时给了识别、合成、说话人、增强四组能力并覆盖 12 种编程语言绑定。️ 离线语音识别与 TTS 支持的功能一览核心能力可以按四组来记分组能力说明语音识别ASR流式 / 非流式识别流式边说边出字非流式整句解码支持 Whisper、Paraformer、SenseVoice、Zipformer 等模型语音合成TTS文本转 wav 音频内置 VITS、Piper、Matcha、Kokoro 等引擎可切换说话人、调节语速说话人相关识别 / 验证 / 分离判断是谁在说并把多人对话切成不同人的段落辅助能力VAD、降噪、声源分离等人声起止检测、GTCRN 与 DPDFNet 降噪、Spleeter 与 UVR 分轨另有语言识别、音频事件标注、关键词唤醒、标点恢复平台与语言绑定情况汇总如下维度覆盖范围桌面 / 服务器Windows、macOS、Linuxx86 / x86_64 / arm64 / arm32 / riscv64移动端Android含 WearOS、iOS、HarmonyOS嵌入式树莓派、RK / 昇腾 / 爱芯 / Intel NPU、Jetson、RISC-V 开发板应用框架Flutter、Tauri、WebAssembly语言绑定C、C、Python、Go、C#、Java、Kotlin、Swift、JavaScript、Dart、Rust、Pascal边界也要说清它只提供推理没有训练工具模型要用上游框架训练后导出成 ONNX它瞄准的是端侧低延迟和可控成本而不是去拼云端大模型的极限精度。️ 本地部署三步跑通从安装到出转写第一步拿到源码与示例仓库只读仅用于获取示例git clone https://gitcode.com/GitHub_Trending/sh/sherpa-onnx进入目录后你会看到按语言划分的十几个示例工程。第二步安装 Python 运行时pip install sherpa-onnx装完后import sherpa_onnx不再报错即可。第三步挑一个官方示例直接运行。以非流式识别为例文件开头的注释里就写好了现成命令以 NeMo CTC 英文模型为例python3 python-api-examples/offline-decode-files.py \ --tokens./sherpa-onnx-nemo-ctc-en-citrinet-512/tokens.txt \ --nemo-ctc./sherpa-onnx-nemo-ctc-en-citrinet-512/model.onnx \ --num-threads2 ./sherpa-onnx-nemo-ctc-en-citrinet-512/test_wavs/0.wav跑完终端会逐条打印转写文本末尾附带一行Real time factor (RTF)的耗时统计。官方示例文件可以直接对照着读非流式 ASRpython-api-examples/offline-decode-files.py流式 ASRpython-api-examples/online-decode-files.py离线 TTSpython-api-examples/offline-tts.py下面这张图来自仓库的 Flutter TTS 示例Windows 上一次生成的实测记录5.216 秒音频耗时 1.233 秒RTF 为 0.236。 语音识别项目选型对比谁该用 Sherpa-ONNX性能预期是多少先给判断录音涉及医疗、车载、金融等隐私数据、不能出设备的用它目标硬件是树莓派、手机或带 NPU 的开发板且想在一个库里拿齐 ASR TTS VAD 的用它预算充足、只追求云端大模型极限精度的别用需要训练或微调模型本身的需求别用——训练请回上游框架这里只负责推理。性能预期可以直接按 RTF处理 1 秒音频的耗时占比来估流式 Zipformer、Paraformer 在普通 CPU 上 RTF 普遍低于 0.1意思是 1 秒音频不到 0.1 秒就算完实时对话毫无压力TTS 在树莓派级别设备上 RTF 约 0.2~0.3即 5 秒语音约 1 秒多生成完毕桌面实测见上图RTF 0.2365.216 秒语音耗时 1.233 秒生成。❓ 离线语音识别常见问题数据会不会出设备问断网之后还能不能用能。模型全部在本地推理不访问任何网络接口只有第一次下载模型文件时需要联网。问我录的音到底会不会传出去不会。识别在设备内完成音频不经过任何第三方服务器这正是选它而不是云端 API 的理由。问跑起来要多久按 RTF 估算流式 ASR 在普通 CPU 上低于 0.11 秒音频不到 0.1 秒算完TTS 在树莓派级设备约 0.2~0.35 秒语音 1 秒多生成桌面端实测 5.216 秒语音耗时 1.233 秒。模型与语种是否覆盖你的场景去根目录 README.md 的预训练模型列表核对语言绑定对应的示例目录都在仓库里如python-api-examples/、go-api-examples/、java-api-examples/。现在就打开 README 确认你的语种模型然后按上面的三步跑通你的第一个 demo。【免费下载链接】sherpa-onnxSpeech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages项目地址: https://gitcode.com/GitHub_Trending/sh/sherpa-onnx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考