日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

离线语音交互技术路线之语音合成(TTS)篇

發布時間:2024/1/8 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 离线语音交互技术路线之语音合成(TTS)篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??在ChatGPT大行其道之際,我心血來潮想要研究研究如何實現離線語音交互,把它和ChatGPT相結合,自己嘗試實現個語音助手玩玩。本篇文章主要先從整體上分析了離線語音交互的技術實現路線,以及每個環節可能用到的參考技術,然后詳細闡述了其中一個環節:語音合成(TTS)的實現方案。

1. 離線語音交互技術路線


如圖所示,離線語音交互主要由以下幾個流程組成:

  • 關鍵詞喚醒:類似于“小愛同學”這樣的喚醒指令,可用參考技術:Snowboy;
  • 獲取語音:通過麥克風等收音設備將聲音記錄為音頻文件或數字信號,可用參考技術:speech_recognition;
  • 語音識別(ASR):將音頻轉換為文本,可用參考技術:Speechbrain;
  • 語義識別(NLP):將人類能夠理解的文本轉化為計算機可以理解的數據,可用參考技術:NNLM等各類NLP模型;
  • 應用層:可以通過理解指令控制設備(例如智能家居),或與chatbot(例如ChatGPT)進行交流
  • 語音合成(TTS):將文本合成為人類語音(例如導航APP中的人聲合成),可用參考技術:pyttsx3。
  • 2. 語音合成(TTS)的實現方案

    ??pyttsx3能夠實現將文本合成為人類語音(例如導航APP中的人聲合成),詳見 pyttsx3官方技術文檔 。

    簡單測試:

    import pyttsx3 text = """ 這是一段測試文本。 """ pyttsx3.speak(text)

    詳細使用例程:

    import pyttsx3 text = """ 這是一段測試文本。 """ engine = pyttsx3.init() # 初始化語音引擎 # 設置語音合成器 voices = engine.getProperty('voices') # 獲取當前設備支持的語音合成器列表 engine.setProperty('voice',voices[0].id) # 設置第一個語音合成器 # 設置語速 rate = engine.getProperty('rate') # 獲取當前語速 engine.setProperty('rate', 200) # 設置語速 # 設置音量 volume = engine.getProperty('volume') # 獲取當前音量 engine.setProperty('volume',1.0) # 設置音量,范圍為0.0-1.0 默認值為1.0engine.say(text) # 合成語音 engine.save_to_file(text,'test.mp3') # 保存語音為音頻文件 engine.runAndWait() engine.stop() # 關閉語言引擎

    總結

    以上是生活随笔為你收集整理的离线语音交互技术路线之语音合成(TTS)篇的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。