python離線錄音轉文字_Python將文字轉成語音并讀出來的實例詳解

前言

本篇文章主要介紹,如何利用Python來實現將文字轉成語音。將文字轉成語音主要有兩種不同的實現方法:先將文字轉成語音,然后再通過讀取語音實現發音、直接調用系統內置的語音引擎實現發音,后一種方法的實現主要利用第三方庫。

環境

Python版本:Anaconda 4.4.10

操作系統:win10

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

調用api

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

1、注冊賬號創建應用

在使用之前,需要先注冊一個百度賬號,然后再創建一個語音合成的api,需要拷貝AppID、API Key、Secret Key后面調用接口的時候需要使用。

202006190610241038.jpg

2、調用語音合成接口

python調用百度語音合成api接口詳細文檔:http://yuyin.baidu.com/docs/tts/196

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

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

如果已安裝setuptools,執行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,

})

# 識別正確返回語音二進制 錯誤則返回dict 參照下面錯誤碼

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")

利用系統內置語音引擎實現發音

1. Pyttsx

Pyttsx是一個跨平臺將文字轉成語音的第三方庫,它對操作系統內置的語音引擎實現了包裝。

Pyttsx安裝

Python2:pip install pyttsx

Python3:pip install pyttsx3

代碼

import pyttsx3

engine = pyttsx3.init()

engine.say("Good")

engine.runAndWait()

pyttsx默認使用的是讀取英文引擎,如果需要讀取中文時需要修改語言設置,不然可能會報錯或者無法發音,首先我們需要參考系統支持的語言類型和參數,通過以下代碼可以查看

engine = pyttsx3.init()

voices = engine.getProperty("voices")

for item in voices:

print(item.id,item.languages)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539350.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539350.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539350.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux 文件夾權限

文件夾默認權限:drwxr-xr-x 755 文件默認權限:-rw-r--r-- 644 ------------------------------------------ drwxr-xr-x 第一位(左數)表示當前目錄是目錄還是文件,d表示目錄,-表示普通文件. 后面9位分為3組,每3組作為1組, 從左到右分別表示&…

魅族15系統是android,魅族15系列評測:性能夠用王者榮耀優化

硬件性能:中配夠用,高配優秀硬件方面,文章前面的參數表已經寫得很清楚,魅族15搭載的是高通驍龍660處理器,并配備4GB的運行內存;魅族15 Plus則搭載三星Exynos 8895,配備6GB運行內存。在目前的移動…

.net 怎么循環得到數組里的值_HashMap 底層實現、加載因子、容量值及死循環

寫在前面:2020年面試必備的Java后端進階面試題總結了一份復習指南在Github上,內容詳細,圖文并茂,有需要學習的朋友可以Star一下!GitHub地址:abel-max/Java-Study-NoteHashMap 簡介HashMap 是一個基于哈希表…

Linux下 -bash: php: command not found 命令找不到

轉載自CSDN博客,原作者:warthur。原文鏈接:http://blog.csdn.net/warthur/article/details/47342163這個問題其實很簡單,如果你在終端輸入一個命令,而系統提示你說命令沒有找到(Command not found&#xff…

hdfs命令

bin/hdfs dfs命令 appendToFile Usage: hdfs dfs -appendToFile <localsrc> ... <dst> 追加一個或者多個文件&#xff08;linux文件&#xff09; <localsrc> ...到hdfs制定文件<dst>中.也可以從命令行讀取輸入. hdfs dfs -appendToFile localfile /use…

eclipse jdk配置_eclipse的安裝和jdk的配置(JAVA)

首先需要到eclipse官網下載(eclipse.org)點擊download進入新界面點擊download 64bit進入新界面 點擊劃線的&#xff0c;點擊download也許但是比較慢&#xff0c;點擊劃線的會出現擴展選項&#xff0c;選擇距離你比較近的節點(速度比較快)作者選的是C…

webview跟html通信的原理,1.iOS: webView與html的交互

摘要:由于最近的項目中大部分功能需要 iOS 原生端與 html 進行交互才能完美實現,所以對 iOS 與 html 的交互方式進行了學習,這篇文章主要介紹 WebViewJavascriptBridge 框架的使用.至于原生的 JavaScriptCore.framework 就不多介紹了,同時在這里推薦一個比較好的博客.http://bl…

HDFS Federation(HDFS 聯盟)介紹

1. 當前HDFS架構和功能概述 我們先回顧一下HDFS功能。HDFS實際上具有兩個功能&#xff1a;命名空間管理&#xff08;Namespace management&#xff09;和塊/存儲管理服務&#xff08;block/storage management&#xff09;。 1.1 命名空間管理 HDFS的命名空間包含目錄、文件和塊…

linux java 部署 生產環境

2019獨角獸企業重金招聘Python工程師標準>>> 下載文件 首先進入網頁&#xff1a; http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 點擊Accept License Agreement后選擇jdk-8u161-linux-x64.tar.gz&#xff0c;下載。 配置環…

c#位數不夠0補充完_C# 位數不足補零

C#位數不足補零&#xff1a;int i10;方法1&#xff1a;Console.WriteLine(i.ToString("D5"));方法2&#xff1a;Console.WriteLine(i.ToString().PadLeft(5,0));//推薦方法3&#xff1a;Console.WriteLine(i.ToString("00000"));在 C# 中可以對字符串使用 …

華為鴻蒙發布作文,華為鴻蒙OS定檔6月2日發布!MatePad Pro 2或同臺亮相:首發預裝...

5月25日一早&#xff0c;原華為EMUI官微就正式宣布更名為Harmony OS&#xff0c;并宣布將在6月2日晚20點召開鴻蒙操作系統及華為全場景新品發布會&#xff0c;屆時將正式發布鴻蒙OS正式版。據近期進行開發者測試的用戶反饋&#xff0c;鴻蒙OS目前已經非常完善&#xff0c;且穩定…

python如何根據數據畫散點圖_如何用python畫出樣本的散點圖?

用python畫樣本散點圖的方法&#xff1a; 數據&#xff08;取第一列作為x&#xff0c;取第四列作為y&#xff09;如下&#xff1a;實現代碼如下&#xff1a;import matplotlib.pyplot as plt import numpy as np # 定義畫散點圖的函數 def draw_scatter(n, s): ""&qu…

Hadoop RPC框架

原文&#xff1a;http://blog.csdn.net/thomas0yang/article/details/41211259 ---------------------------------------------------------------------------------------------- 1、RPC框架概述1.1 RPC&#xff08;Remote Procedure Call Protocol&#xff09;——遠程過程…

JavaSE基礎知識學習-----泛型

泛型 Java泛型是jdk1.5的一個新特性&#xff0c;jdk的性特性還包括&#xff1a;泛型&#xff0c;枚舉&#xff0c;裝箱和拆箱&#xff0c;可變參數等。這里先主要學習泛型。這些特性&#xff0c;現在都在廣泛的使用。因為現在使用IDE編寫代碼&#xff0c;都是標準的代碼提示&am…

centos7 校正linux系統時間_Linux系統:Centos7下搭建ClickHouse列式存儲數據庫

一、ClickHouse簡介1、基礎簡介Yandex開源的數據分析的數據庫&#xff0c;名字叫做ClickHouse&#xff0c;適合流式或批次入庫的時序數據。ClickHouse不應該被用作通用數據庫&#xff0c;而是作為超高性能的海量數據快速查詢的分布式實時處理平臺&#xff0c;在數據匯總查詢方面…

html調用js頁面顯示不出來了,JS代碼文件調用顯示亂碼,直接寫在html頁面的里可以調用,但是單獨放在js文件里不能調用...

最近遇到了一個很奇怪的問題&#xff0c;就是在HTML網頁代碼里直接寫JS代碼可以正常運行的代碼&#xff0c;使用JS文件調用就不行。var cities [ {"name" : "北京"}, {"name" : "上海"}, {"name" : "廣州"} ];$(…

水系圖一般在哪里找得到_城市供水系統防護體系的探索與思考

城市是一個國家或地區的政治、經濟和文化中心&#xff0c; 在戰爭中常常被選為重點打擊目標。1988年&#xff0c;時任美國空軍司令部副參謀長助理的約翰A. 沃登上校提出“五環”目標打擊理論&#xff0c;將 對敵打擊目標分為五個層&#xff0c;其中就將基礎設施列為第三層打擊目…

Hadoop webHDFS設置和使用說明

原文&#xff1a;http://blog.csdn.net/iloveyin/article/details/28264027 ---------------------------------------------------------------------------------------- 1.配置 namenode的hdfs-site.xml是必須將dfs.webhdfs.enabled屬性設置為true&#xff0c;否則就不能使…

CES 2017前瞻之AI:無人機依舊小巧,機器人主打家庭服務

再過2天&#xff0c;CES 2017就要開始了&#xff0c;根據這些已知曉的部分展商&#xff0c;我們也許能夠看到未來的一些趨勢。 還有2天&#xff0c;備受矚目的CES 2017&#xff08;2017年國際消費類電子產品展覽會&#xff09;就要拉開帷幕了。 每一年&#xff0c;CES上都會出…

ionic html5 上傳圖片,ionic4+angular7+cordova上傳圖片功能的實例代碼

前言ionic是一個垮平臺開發框架&#xff0c;可通過web技術開發出多平臺的應用。但只建議開發簡單應用。復雜的應用需要用到許多cordova插件&#xff0c;而cordova插件的更新或者移動平臺的更新很可能導致插件的不可用&#xff0c;維護升級成本較高。安裝插件安裝插件Image Pick…