先通過pip install baidu-api安裝必要的庫,然後通過調用百度api實現大規模文本的語音合成,這樣就可以很容易把文本格式的圖書轉化爲語音,從此開始聽書生活。當然,也可以調用百度的api,實現大規模的文字識別,把pdf格式的圖書轉化爲tx格式,然後再通過本文的方法實現語音合成。
from aip import AipSpeech
""" 你的 APPID AK SK """
APP_ID = '********'
API_KEY = '**************************'
SECRET_KEY = '*****************************'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
file=open("耶路撒冷三千年.txt", encoding='utf-8')
text=file.readlines()
file.close()
soundF = open('audio.mp3','+wb')
for line in text:
#print(line)
data=[]
#split long sentences into small ones
if len(line)>2000:
data = line.split('。')
else:
data.append(line)
#convert txt to sound by baidu API
for sentences in data:
result = client.synthesis(sentences, 'zh', 1, {
'vol': 5,'per':4
})
if not isinstance(result, dict):
soundF.write(result)
print(len(sentences))
else:
print("failed length" + str(len(sentences)))
soundF.close()