乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Python將文字轉(zhuǎn)成語(yǔ)音并讀出來(lái)

       老三的休閑書(shū)屋 2019-01-13

      前言

      本篇文章主要介紹,如何利用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,需要拷貝AppIDAPI Key、Secret Key后面調(diào)用接口的時(shí)候需要使用。

      Python將文字轉(zhuǎn)成語(yǔ)音并讀出來(lái)

      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 playsoundplaysound('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 pyttsx3engine = 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)

      Python將文字轉(zhuǎn)成語(yǔ)音并讀出來(lái)

      可以看到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 gTTSimport ostts = 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ā)音

      import win32com.client as winspeak = win.Dispatch('SAPI.SpVoice')speak.Speak('come on')speak.Speak('你好'

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多