欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python將文字轉(zhuǎn)成語音并讀出來的實(shí)例詳解

 更新時(shí)間:2019年07月15日 10:00:09   作者:修煉之路  
今天小編就為大家分享一篇Python將文字轉(zhuǎn)成語音并讀出來的實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

前言

本篇文章主要介紹,如何利用Python來實(shí)現(xiàn)將文字轉(zhuǎn)成語音。將文字轉(zhuǎn)成語音主要有兩種不同的實(shí)現(xiàn)方法:先將文字轉(zhuǎn)成語音,然后再通過讀取語音實(shí)現(xiàn)發(fā)音、直接調(diào)用系統(tǒng)內(nèi)置的語音引擎實(shí)現(xiàn)發(fā)音,后一種方法的實(shí)現(xiàn)主要利用第三方庫。

環(huán)境

Python版本:Anaconda 4.4.10

操作系統(tǒng):win10

注意:在使用第三方庫的時(shí)候,不同的操作系統(tǒng)和Python版本代碼可能有所差別。

調(diào)用api

可以調(diào)用第三方的語音合成api生成音頻文件,然后再播放音頻文件即可,這里我使用的是百度語音合成api。

1、注冊(cè)賬號(hào)創(chuàng)建應(yīng)用

在使用之前,需要先注冊(cè)一個(gè)百度賬號(hào),然后再創(chuàng)建一個(gè)語音合成的api,需要拷貝AppID、API Key、Secret Key后面調(diào)用接口的時(shí)候需要使用。

2、調(diào)用語音合成接口

python調(diào)用百度語音合成api接口詳細(xì)文檔:http://yuyin.baidu.com/docs/tts/196

3、安裝百度提供的Python庫:

如果已安裝pip,執(zhí)行pip install baidu-aip即可。

如果已安裝setuptools,執(zhí)行python setup.py install即可。

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)

result = client.synthesis('你好嗎?', 'zh', 1, {
 'vol': 5,
})
# 識(shí)別正確返回語音二進(jìn)制 錯(cuò)誤則返回dict 參照下面錯(cuò)誤碼
if not isinstance(result, dict):
 with open('auido.mp3', 'wb') as f:
  f.write(result)

播放音頻文件

安裝playsound:pip install playsound

from playsound import playsound

playsound("auido.mp3")

利用系統(tǒng)內(nèi)置語音引擎實(shí)現(xiàn)發(fā)音

1. Pyttsx

Pyttsx是一個(gè)跨平臺(tái)將文字轉(zhuǎn)成語音的第三方庫,它對(duì)操作系統(tǒng)內(nèi)置的語音引擎實(shí)現(xiàn)了包裝。

Pyttsx安裝

Python2:pip install pyttsx

Python3:pip install pyttsx3

代碼

import pyttsx3

engine = pyttsx3.init()
engine.say("Good")
engine.runAndWait()

pyttsx默認(rèn)使用的是讀取英文引擎,如果需要讀取中文時(shí)需要修改語言設(shè)置,不然可能會(huì)報(bào)錯(cuò)或者無法發(fā)音,首先我們需要參考系統(tǒng)支持的語言類型和參數(shù),通過以下代碼可以查看

engine = pyttsx3.init()
voices = engine.getProperty("voices")
for item in voices:
 print(item.id,item.languages)

可以看到ZH-CN的參數(shù),表示的是中文,然后將代碼修改成如下即可

engine = pyttsx3.init()
engine.setProperty("voice","HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Sp
 eech\Voices\Tokens\TTS_MS_ZH-CN_HUIHUI_11.0")
engine.say("你好嗎?")
engine.runAndWait()

2. gTTS

gTTS可以將文字轉(zhuǎn)成語音進(jìn)行保存為MP3格式,然后再讀取語音實(shí)現(xiàn)發(fā)音,它是通過調(diào)用Google提供的TTS服務(wù)來實(shí)現(xiàn)將文字轉(zhuǎn)語音的,因?yàn)樾枰{(diào)用Google的服務(wù),所以需要翻墻,因?yàn)槿鄙侪h(huán)境所以下面的代碼是沒有測試過的。調(diào)用下面代碼的時(shí)候,需要設(shè)置在代碼中設(shè)置代碼或者全局代理。

from gtts import gTTS
import os

tts = gTTS(text="come on",lang="en")
tts.save("test.mp3")
os.system("mpg321 test.mp3")

如果需要生成wav格式的音頻文件,可以利用FFmpeg將MP3的音頻文件轉(zhuǎn)成wav格式。

操作系統(tǒng)內(nèi)置引擎

利用win32com來調(diào)用Windows操作系統(tǒng)內(nèi)置的語音引擎實(shí)現(xiàn)文字的發(fā)音

以上這篇Python將文字轉(zhuǎn)成語音并讀出來的實(shí)例詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python使用re模塊實(shí)現(xiàn)okenizer(表達(dá)式分詞器)

    Python使用re模塊實(shí)現(xiàn)okenizer(表達(dá)式分詞器)

    這篇文章主要介紹了Python使用re模塊實(shí)現(xiàn)okenizer,我們這里講解用正則表達(dá)式構(gòu)建簡單的表達(dá)式分詞器(tokenizer),它能夠?qū)⒈磉_(dá)式字符串從左到右解析為標(biāo)記(tokens)流,需要的朋友可以參考下
    2022-04-04
  • Python中的joblib模塊詳解

    Python中的joblib模塊詳解

    這篇文章主要介紹了Python中的joblib模塊詳解,用已知的數(shù)據(jù)集經(jīng)過反復(fù)調(diào)優(yōu)后,訓(xùn)練出一個(gè)較為精準(zhǔn)的模型,想要用來對(duì)格式相同的新數(shù)據(jù)進(jìn)行預(yù)測或分類,常見的做法是將其訓(xùn)練好模型封裝成一個(gè)模型文件,直接調(diào)用此模型文件用于后續(xù)的訓(xùn)練,需要的朋友可以參考下
    2023-08-08
  • python如何實(shí)現(xiàn)多層級(jí)自動(dòng)賦值字典

    python如何實(shí)現(xiàn)多層級(jí)自動(dòng)賦值字典

    這篇文章主要介紹了python如何實(shí)現(xiàn)多層級(jí)自動(dòng)賦值字典問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python字符串格式化方式

    Python字符串格式化方式

    這篇文章主要介紹了Python字符串格式化方式,字符串格式化在我們的開發(fā)過程中被廣泛的應(yīng)用,因此也是我們要重點(diǎn)掌握的內(nèi)容之一,下文相關(guān)介紹,需要的朋友可以參考一下
    2022-04-04
  • python中json、字典的區(qū)別以及相互轉(zhuǎn)換方法

    python中json、字典的區(qū)別以及相互轉(zhuǎn)換方法

    在Python中我們經(jīng)常會(huì)用到JSON格式的數(shù)據(jù),而將JSON格式轉(zhuǎn)化為Python的字典類型是一種常見的操作,這篇文章主要給大家介紹了關(guān)于python中json、字典的區(qū)別以及相互轉(zhuǎn)換方法的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • Python爬蟲之線程池的使用

    Python爬蟲之線程池的使用

    這篇文章主要介紹了Python爬蟲之線程池的使用,文中有非常詳細(xì)的的代碼示例,對(duì)正在學(xué)習(xí)python爬蟲的小伙伴們很有幫助喲。需要的朋友可以參考下
    2021-05-05
  • python實(shí)現(xiàn)控制臺(tái)輸出顏色

    python實(shí)現(xiàn)控制臺(tái)輸出顏色

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)控制臺(tái)輸出顏色,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Python超越函數(shù)積分運(yùn)算以及繪圖實(shí)現(xiàn)代碼

    Python超越函數(shù)積分運(yùn)算以及繪圖實(shí)現(xiàn)代碼

    今天小編就為大家分享一篇Python超越函數(shù)積分運(yùn)算以及繪圖實(shí)現(xiàn)代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 使用tensorflow DataSet實(shí)現(xiàn)高效加載變長文本輸入

    使用tensorflow DataSet實(shí)現(xiàn)高效加載變長文本輸入

    今天小編就為大家分享一篇使用tensorflow DataSet實(shí)現(xiàn)高效加載變長文本輸入,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python3使用print打印帶顏色的字符串代碼實(shí)例

    python3使用print打印帶顏色的字符串代碼實(shí)例

    這篇文章主要介紹了python3使用print打印帶顏色的字符串代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08

最新評(píng)論