使用Python實現(xiàn)文字轉語音并播放功能
更新時間:2024年01月11日 10:26:53 作者:我是麥叔
這篇文章主要給大家介紹了使用Python實現(xiàn)文字轉語音并播放功能,文中通過代碼示例給大家講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下
用Python將給定的文本轉換成語音并播放,首先要導入以下庫。
import os from pygame import mixer import pyttsx3
之后,分兩步進行文本轉語音操作:
1.將文本生成音頻文件
參數input_text是需要朗讀的字符串,返回值output_path是生成的語音文件。
def m_generatetts(input_text): # 輸出input_text,生成相應的語音文件
# 獲取輸入的文本內容
# input_text = text_entry.get("0.0", "end-1c")
# 初始化 TTS 引擎
engine = pyttsx3.init()
global cansaveornot
try:
# 設置語速、音量等參數(根據需求自行調整)
engine.setProperty('rate', 150) # 默認值為 200
engine.setProperty('volume', 0.8) # 默認值為 1.0
if not os.path.exists('./tmp/'): # 檢測文件夾是否存在,如果不存在則創(chuàng)建
os.makedirs('./tmp/')
# print("文件夾已檢查并創(chuàng)建")
output_path = './tmp/outputtts.wav' # output_path是臨時生成的TTS語音文件
if os.path.exists(output_path): # 如果檢測到已經存在該文件,則先退出進程,然后刪除掉該文件
mixer.quit() # 退出語音進程
os.remove(output_path) # 刪除掉語音文件
# print(f"文件 {output_path} 刪除成功!")
# 將文本轉換為語音并保存到指定路徑
engine.save_to_file(input_text, output_path) # 保存語音文件
engine.runAndWait()
# print("已保存為 %s" % output_path)
cansaveornot = 'yes' # 生成的文件保存成功才允許導出操作
return output_path
except Exception as e:
print("發(fā)生錯誤:", str(e))2.播放音頻文件
參數filepath是第一步生成出來的wav音頻文件地址。
def m_playaudio(filepath): # filepath是WAV格式的語音文件地址,播放該文件
mixer.init()
size = 0.7
mixer.music.set_volume(size)
mixer.music.load(filepath)
mixer.music.play()以上就是使用Python實現(xiàn)文字轉語音并播放功能的詳細內容,更多關于Python實現(xiàn)文字轉語音的資料請關注腳本之家其它相關文章!
相關文章
Python?IDLE?Subprocess?Connection?Error的簡單解決方法
最近用要Python處理一點事,就打開Python IDLE,結果出現(xiàn)錯誤,下面這篇文章主要給大家介紹了關于Python?IDLE?Subprocess?Connection?Error的簡單解決方法,需要的朋友可以參考下2023-01-01
Pytorch訓練模型得到輸出后計算F1-Score 和AUC的操作
這篇文章主要介紹了Pytorch訓練模型得到輸出后計算F1-Score 和AUC的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05

