亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

前言

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

環(huán)境

Python版本:Anaconda 4.4.10

操作系統(tǒng):win10

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

調(diào)用api

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

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

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

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

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

3、安裝百度提供的Python庫(kù):

如果已安裝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í)別正確返回語(yǔ)音二進(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)置語(yǔ)音引擎實(shí)現(xiàn)發(fā)音

1. Pyttsx

Pyttsx是一個(gè)跨平臺(tái)將文字轉(zhuǎn)成語(yǔ)音的第三方庫(kù),它對(duì)操作系統(tǒng)內(nèi)置的語(yǔ)音引擎實(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í)需要修改語(yǔ)言設(shè)置,不然可能會(huì)報(bào)錯(cuò)或者無(wú)法發(fā)音,首先我們需要參考系統(tǒng)支持的語(yǔ)言類型和參數(shù),通過(guò)以下代碼可以查看

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)成語(yǔ)音進(jìn)行保存為MP3格式,然后再讀取語(yǔ)音實(shí)現(xiàn)發(fā)音,它是通過(guò)調(diào)用Google提供的TTS服務(wù)來(lái)實(shí)現(xiàn)將文字轉(zhuǎn)語(yǔ)音的,因?yàn)樾枰{(diào)用Google的服務(wù),所以需要翻墻,因?yàn)槿鄙侪h(huán)境所以下面的代碼是沒(méi)有測(cè)試過(guò)的。調(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來(lái)調(diào)用Windows操作系統(tǒng)內(nèi)置的語(yǔ)音引擎實(shí)現(xiàn)文字的發(fā)音

以上這篇Python將文字轉(zhuǎn)成語(yǔ)音并讀出來(lái)的實(shí)例詳解就是小編分享給大家的全部?jī)?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)建簡(jiǎn)單的表達(dá)式分詞器(tokenizer),它能夠?qū)⒈磉_(dá)式字符串從左到右解析為標(biāo)記(tokens)流,需要的朋友可以參考下
    2022-04-04
  • Python中的joblib模塊詳解

    Python中的joblib模塊詳解

    這篇文章主要介紹了Python中的joblib模塊詳解,用已知的數(shù)據(jù)集經(jīng)過(guò)反復(fù)調(diào)優(yōu)后,訓(xùn)練出一個(gè)較為精準(zhǔn)的模型,想要用來(lái)對(duì)格式相同的新數(shù)據(jù)進(jìn)行預(yù)測(cè)或分類,常見(jiàn)的做法是將其訓(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)賦值字典問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python字符串格式化方式

    Python字符串格式化方式

    這篇文章主要介紹了Python字符串格式化方式,字符串格式化在我們的開(kāi)發(fā)過(guò)程中被廣泛的應(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的字典類型是一種常見(jiàn)的操作,這篇文章主要給大家介紹了關(guān)于python中json、字典的區(qū)別以及相互轉(zhuǎn)換方法的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • Python爬蟲(chóng)之線程池的使用

    Python爬蟲(chóng)之線程池的使用

    這篇文章主要介紹了Python爬蟲(chóng)之線程池的使用,文中有非常詳細(xì)的的代碼示例,對(duì)正在學(xué)習(xí)python爬蟲(chóng)的小伙伴們很有幫助喲。需要的朋友可以參考下
    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ì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • 使用tensorflow DataSet實(shí)現(xiàn)高效加載變長(zhǎng)文本輸入

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

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

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

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

最新評(píng)論