淺談盤點5種基於Python生成的個性化語音方法

    小編在很小的時候就特別喜歡搞怪,模仿別人的聲音,尤其是老頭老太太模仿的那是一個出神入化。

    今天小編就帶大傢模仿一下個性化的聲音,不過不是用小編的嘴,而是用程序,看它們都是怎麼被模仿出來的。

1、gtts模塊

    這是一款語音模塊,它可以將任意文字轉換為音頻文件,格式為mp3。下面我們一起來看看它的用法:

一、安裝並導入:

pip install gtts
from gtts import gTTS

二、配置gtts客戶端

tts = gTTS(text=text, lang='zh-tw')

text:音頻內容
lang: 音頻語言

三、保存音頻文件

tts.save("XXX.mp3")

2、baidu-aip

    通過在百度開放開發者平臺申請語音合成賬號來生成音頻文件。

 

# 下載baidu-aip模塊並導入
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) #配置百度語音客戶端
res=client.synthesis(text,lang,1,options={
spd:語速,取值0-9,默認為5中語速,
pit:音調,取值0-9,默認為5中語調,
vol:音量,取值0-15,默認為5中音量,
per:發音人選擇, 0為女聲,1為男聲, 3為情感合成-度逍遙,4為情感合成-度丫丫,默認為普通女
}) #配置個性化語音
with open('XX.mp3','wb') as f: #打開文件流
f.write(res)  #寫入文件

3、pyttsx3

這也是一款優秀的文字轉語音的模塊,它生成的音頻文件也比較具有個性化。

下載pyttsx3模塊並導入:

pip install pyttsx3
import pyttsx3

初始化:

pp = pyttsx3.init()

添加語音文本:

pp.say('Hello World')

運行:

pp.runAndWait()

當然它還可以調整聲音的音量,頻率,變聲,當然設置方法都差不多,都是先拿到它對應功能的值然後在進行加減。

比如說音量調節:

vol=pp.getProperty('volume')
pp.setProperty('vol',vol+0.5)

對於發音,頻率,變聲則為 vioce,rate,vioces,是不是很好理解瞭?當然,如果你想讓它循環播放,隻需加一個事件驅動循環即可:

pp.startLoop()

4、pywin32

操作window dll的庫,它可以實現很多功能,十分強大。

安裝並且導入:

pip install pywin32
import win32com.client

配置客戶端接口:

speaker = win32com.client.Dispatch("SAPI.SpVoice")

生成音頻:

speaker.Speak("hello")

由於對中文支持不友好,所以基本用的不多。

5、speech

也是一款強大的語音模塊,依賴於pywin32,而且它最適合做語音啟動程序瞭。

下載並導入:

pip install speech
import speech

生成音頻:

speech.say('hello')

這麼多音頻模塊,你瞭解多少瞭,到底哪一個才是你的菜呢?

到此這篇關於淺談盤點5種基於Python生成的個性化語音方法的文章就介紹到這瞭,更多相關Python生成個性化語音內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: