1. 实现功能
WAV
格式的音频 ===> 文字
2. 代码实现
import speech_recognition as sr
from os import path
global content
# 语音 ===> 文字
def voice2Text(file_name):
voice_file = path.join(path.dirname(path.realpath(__file__)), file_name)
# use the audio file as the audio source
r = sr.Recognizer()
with sr.AudioFile(voice_file) as source:
audio = r.record(source)
try:
content = r.recognize_google(audio, language='zh-CN') # 目标语言:中文
print("Google Speech Recognition:" + content)
except sr.UnknownValueError:
print("Google Speech Recognition could not understand audio")
except sr.RequestError as e:
print("Google Speech Recognition error; {0}".format(e))
return content or '无法翻译'
voice2Text('./test_voice.wav')
3. 注意点
① 仅支持wav
格式的音频文件,可以其他格式的音频文件可以去这个网址转换:
https://www.aconvert.com/cn/audio/
② 可能报错:
[WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
需要某种方法,毕竟用的是Google的接口。