wav 轉 text ,感覺 還是IBM 的 speech to text 比較靠得住。
比百度的語音識別API好上太多。
https://speech-to-text-demo.mybluemix.net/
--------------------------------------------------------------------
註冊拿到 帳號密碼後,
有一個包比較 方便 調用
是SpeechRecogntion
https://pypi.python.org/pypi/SpeechRecognition/
pip install 或者 按照說明 安裝就行了
---------------------------------------------------------------------
SpeechRecognition包含多個網站的API
然而Google的並不能用,AT&T的沒試過。
--------------------------------------------------------------------
在debian 上測試的時候有個問題,需要 管理 員權限 。
可能是內部有過wav 2 flac 然後把臨時文件 保存在dist-package下了,
--------------------------------------------------------------------
SpeechRecognition有示例代碼wav_transcribe.py;
如果用於識別中文,需要在speechrecognition/__init__.py中,
修改recognize_ibm函數的482行
assert language in ["en-US", "es-ES", "ja-JP"], "`language` must be a valid language."
增加"zh-CN"項,
assert language in ["en-US", "es-ES", "ja-JP", "zh-CN"], "`language` must be a valid language."
---------------------------------------------------------------------
SpeechRecognition的用法 如下
import speech_recognition as sr
讀wav文件
r = sr.Recognizer()
with sr.WavFile(path) as source:
audio = r.record(source)
然後可以調用 recognize_ibm 返回識別結果,是utf8格式的,一般寫起來 會有些問題
IBM_USERNAME = 'XXXXXXXX'
IBM_PASSWORD= 'XXXXXXXX'
text = r.recognize_ibm(audio, username = IBM_USERNAME, password = IBM_PASSWORD, language = 'zh-CN')