淺談盤(pán)點(diǎn)5種基于Python生成的個(gè)性化語(yǔ)音方法
小編在很小的時(shí)候就特別喜歡搞怪,模仿別人的聲音,尤其是老頭老太太模仿的那是一個(gè)出神入化。
今天小編就帶大家模仿一下個(gè)性化的聲音,不過(guò)不是用小編的嘴,而是用程序,看它們都是怎么被模仿出來(lái)的。
1、gtts模塊這是一款語(yǔ)音模塊,它可以將任意文字轉(zhuǎn)換為音頻文件,格式為mp3。下面我們一起來(lái)看看它的用法:
一、安裝并導(dǎo)入:
pip install gttsfrom gtts import gTTS
二、配置gtts客戶(hù)端
tts = gTTS(text=text, lang=’zh-tw’)
text:音頻內(nèi)容lang: 音頻語(yǔ)言
三、保存音頻文件
tts.save('XXX.mp3')2、baidu-aip
通過(guò)在百度開(kāi)放開(kāi)發(fā)者平臺(tái)申請(qǐng)語(yǔ)音合成賬號(hào)來(lái)生成音頻文件。
# 下載baidu-aip模塊并導(dǎo)入from aip import AipSpeech''' 你的 APPID AK SK '''APP_ID = ’你的 App ID’API_KEY = ’你的 Api Key’SECRET_KEY = ’你的 Secret Key’client = AipSpeech(APP_ID, API_KEY, SECRET_KEY) #配置百度語(yǔ)音客戶(hù)端res=client.synthesis(text,lang,1,options={spd:語(yǔ)速,取值0-9,默認(rèn)為5中語(yǔ)速,pit:音調(diào),取值0-9,默認(rèn)為5中語(yǔ)調(diào),vol:音量,取值0-15,默認(rèn)為5中音量,per:發(fā)音人選擇, 0為女聲,1為男聲, 3為情感合成-度逍遙,4為情感合成-度丫丫,默認(rèn)為普通女}) #配置個(gè)性化語(yǔ)音with open(’XX.mp3’,’wb’) as f: #打開(kāi)文件流f.write(res) #寫(xiě)入文件3、pyttsx3
這也是一款優(yōu)秀的文字轉(zhuǎn)語(yǔ)音的模塊,它生成的音頻文件也比較具有個(gè)性化。
下載pyttsx3模塊并導(dǎo)入:
pip install pyttsx3import pyttsx3
初始化:
pp = pyttsx3.init()
添加語(yǔ)音文本:
pp.say(’Hello World’)
運(yùn)行:
pp.runAndWait()
當(dāng)然它還可以調(diào)整聲音的音量,頻率,變聲,當(dāng)然設(shè)置方法都差不多,都是先拿到它對(duì)應(yīng)功能的值然后在進(jìn)行加減。
比如說(shuō)音量調(diào)節(jié):
vol=pp.getProperty(’volume’)pp.setProperty(’vol’,vol+0.5)
對(duì)于發(fā)音,頻率,變聲則為 vioce,rate,vioces,是不是很好理解了?當(dāng)然,如果你想讓它循環(huán)播放,只需加一個(gè)事件驅(qū)動(dòng)循環(huán)即可:
pp.startLoop()4、pywin32
操作window dll的庫(kù),它可以實(shí)現(xiàn)很多功能,十分強(qiáng)大。
安裝并且導(dǎo)入:
pip install pywin32import win32com.client
配置客戶(hù)端接口:
speaker = win32com.client.Dispatch('SAPI.SpVoice')
生成音頻:
speaker.Speak('hello')
由于對(duì)中文支持不友好,所以基本用的不多。
5、speech也是一款強(qiáng)大的語(yǔ)音模塊,依賴(lài)于pywin32,而且它最適合做語(yǔ)音啟動(dòng)程序了。
下載并導(dǎo)入:
pip install speechimport speech
生成音頻:
speech.say(’hello’)
這么多音頻模塊,你了解多少了,到底哪一個(gè)才是你的菜呢?
到此這篇關(guān)于淺談盤(pán)點(diǎn)5種基于Python生成的個(gè)性化語(yǔ)音方法的文章就介紹到這了,更多相關(guān)Python生成個(gè)性化語(yǔ)音內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. ASP.NET MVC遍歷驗(yàn)證ModelState的錯(cuò)誤信息2. 關(guān)于Ajax跨域問(wèn)題及解決方案詳析3. SpringMVC+Jquery實(shí)現(xiàn)Ajax功能4. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向5. ASP中if語(yǔ)句、select 、while循環(huán)的使用方法6. JavaScript實(shí)現(xiàn)組件化和模塊化方法詳解7. PHP設(shè)計(jì)模式中工廠模式深入詳解8. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法9. 刪除docker里建立容器的操作方法10. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明
