1. 程式人生 > >python把文字轉成語音

python把文字轉成語音

用的是百度的介面,搜尋百度AI開放平臺,登陸後選擇產品服務-人工智慧-語音技術,然後建立一個應用(語音合成)

建立後會有一個三個key,呼叫的時候會用到

 

呼叫起來還是挺簡單的

from aip import AipSpeech
#一次只能轉換512個漢字,長文章需要分段轉換
APP_ID = '你的ID'
API_KEY = '你的key'
SECRET_KEY = '你的key'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

text="將進酒" \
"君不見黃河之水天上來,奔流到海不復回。" \
"君不見高堂明鏡悲白髮,朝如青絲暮成雪。" \
"人生得意須盡歡,莫使金樽空對月。" \
"天生我材必有用,千金散盡還復來。" \
"烹羊宰牛且為樂,會須一飲三百杯。" \
"岑夫子,丹丘生,將進酒,杯莫停。" \
"與君歌一曲,請君為我側耳聽。" \
"鐘鼓饌玉不足貴,但願長醉不復醒。" \
"古來聖賢皆寂寞,惟有飲者留其名。" \
"陳王昔時宴平樂,斗酒十千恣歡謔。" \
"主人何為言少錢,徑須沽取對君酌。" \
"五花馬,千金裘,呼兒將出換美酒,與爾同消萬古愁。"


'''

引數 型別       描述                                  是否必須
tex String 合成的文字,使用UTF-8編碼,請注意文字長度必須小於1024位元組              是
cuid String 使用者唯一標識,用來區分使用者,填寫機器 MAC 地址或 IMEI 碼,長度為60以內 否
spd String 語速,取值0-9,預設為5中語速                                否
pit String 音調,取值0-9,預設為5中語調                                否
vol String 音量,取值0-15,預設為5中音量                             否
per String 發音人選擇, 0為女聲,1為男聲,3為情感合成-度逍遙,4為情感合成-度丫丫,預設為普通女      否

'''

result = client.synthesis(text, 'zh', 1, {
"spd": 5,
'vol': 5,
"pit": 4,
"per": 0,
})

#如果引數沒有錯誤,在.py的當前檔案目錄下會出現一個test.mp3檔案
if not isinstance(result, dict):
with open('test.mp3', 'wb') as f:
f.write(result)
else:
print(resul