SpeechRecognition:终极 Python 语音转文本库
SpeechRecognition:终极 Python 语音转文本库
使用一个库将音频转换为文本
SpeechRecognition 是开发者构建语音应用时的首选 Python 库。拥有 9K+ GitHub 星标 和 15+ 识别引擎 支持,它能处理从离线处理到企业级云 API 的一切。
支持的引擎(离线 + 在线)
离线引擎(无需互联网)
- CMU Sphinx - 轻量级、可定制
- Vosk API - 多语言、高准确率
- OpenAI Whisper(本地) - 最先进的准确率
- Faster Whisper - 优化性能
- Snowboy - 热词检测
云 API(生产就绪)
- OpenAI Whisper API
- Groq Whisper API(超快)
- Google Cloud Speech
- Google Speech Recognition
- Cohere Transcribe API
- Microsoft Azure Speech
- IBM Watson
🚀 快速开始(2 分钟)
pip install SpeechRecognition
python -m speech_recognition
麦克风示例:
import speech_recognition as sr
r = sr.Recognizer()
with sr.Microphone() as source:
print("说点什么!")
audio = r.listen(source)
text = r.recognize_whisper(audio)
print(f"你说:{text}")
📦 简单安装
# 核心库
pip install SpeechRecognition
# 支持麦克风
pip install SpeechRecognition[audio]
# 支持 Whisper(本地)
pip install SpeechRecognition[whisper-local]
# 支持 OpenAI API
pip install SpeechRecognition[openai]
# 支持 Cohere API
pip install SpeechRecognition[cohere-api]
实际应用案例
- 语音助手 - 命令处理
- 会议转录 - 自动会议记录
- 播客转录 - 音频转文本
- 辅助工具 - 听障人士的语音转文本
- IoT 设备 - 语音控制系统
- 呼叫中心分析 - 客户服务转录
最佳效果的专业提示
1. 环境噪音校准
r.adjust_for_ambient_noise(source) # 自动校准
r.energy_threshold = 4000 # 微调灵敏度
2. 多个麦克风
for i, name in enumerate(sr.Microphone.list_microphone_names()):
print(f"麦克风 {i}: {name}")
# 使用:Microphone(device_index=3)
3. 语言支持
# 英式英语、法语、普通话等
result = r.recognize_google(audio, language='en-GB')
常见问题排查
| 问题 | 解决方案 |
|---|---|
| "无默认输入设备" | 使用 device_index 参数 |
| 错误触发 | 增加 energy_threshold |
| 准确率低 | 使用 Whisper/Vosk,校准噪音 |
| Raspberry Pi 挂起 | 添加 USB 声卡 |
为什么选择 SpeechRecognition?
✅ 一个库,多引擎 - 无供应商锁定
✅ 离线 + 在线 - 处处可用
✅ 经过实战检验 - 9K+ 星标,2.4K 分叉
✅ 活跃维护 - 最新发布于 2026 年 4 月
✅ 详尽文档 - 每个用例都有示例
✅ 跨平台 - Windows/Mac/Linux/RPi
立即开始
pip install SpeechRecognition[audio,whisper-local]
5 分钟内构建你的第一个语音应用!
原始文章:
查看原文