*-* coding: utf-8 *-*
Author: DaYuZhiNeng
準備工作:
1. 安裝baidu-aip庫,是百度的人工智慧庫
2. 註冊baidu AI的賬戶,www.ai.baidu.com 進入後點控制檯-產品服務-人工智慧-語音技術-建立應用,按自己情況填寫資料,提交獲得自己的資訊,免費的哦
從百度的AI庫呼叫其中的AipSpeech類,是百度專門用來做語音處理的人工智慧,類似的還有AipFace等等
from aip import AipSpeech
這是剛才在baidu網站申請的資訊,填進去
APP_ID = "你的id"
API_KEY = "你的key"
SECRET_KEY = "你的祕鑰"
定義一個client變數來例項化AipSpeech,把上面的三個引數傳入,具體AipSpeech怎麼個原理操作的我也不懂,百度技術文件上就是這麼寫的,照抄的,留待日後再研究
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
定義一個result字典變數來接收client的合成函式synthesis產生的字典,synthesis是人工合成的意思,學習個單詞也不錯,第一個引數是你要輸入的文字,這個文字要合成為語音,第二個引數不知道是啥,原以為是中文,我把文字引數改成英文他也能讀出來,搞不懂,第三個引數ctp=1,也不懂是啥原理,但是如果沒有的話,mp3檔案就無法生成,所以很重要,第四個字典裡面的引數就是設定音調音量男聲女聲之類的,以上也是來在百度技術文件,具體原理不懂,只能拿來用
"per": 4,
"spd": 4})
這個也是固定的百度技術文件,應該是判斷上面的result是否在內建的dict裡面,看條件生成mp3檔案,不滿足條件就報錯.
if not isinstance(result, dict):
with open("audio.mp3", "wb") as f:
f.write(result)
d