關於我用 Vue 寫的「微軟語音合成工具」差點被百度收購這件事

語言: CN / TW / HK

theme: awesome-green

image.png

某天在公司的下午,收到了來自百度營銷中心的發來的資訊,是關於我用 Electron + Vue + ElementPlus + Vite 構建的一款 「 微軟語音合成工具 」的,至此開啟了不尋常的一段旅程 🎬

那麼關於百度收購的進展,文章結尾有 🤑

那麼就讓我先來介紹一下這個專案

這個軟體能做什麼 ?

那到底這個軟體能做什麼呢?能吸引百度都來看看

image.png

1. 普通文字轉換為語音

功能介紹: 將簡單的文字轉為語音

使用方法:

1.  將文字複製到下方的文字框,即內容輸入區域
2.  右邊控制欄選擇需要的語音、風格和角色等
3.  點選`開始轉換`

注意:

1.  文字較長時,軟體內部會自動對檔案進行切片,每 300 字左右檢測下一個標點符號,並在此處分割,依次轉為語音後自動拼接
2.  文字較長且沒有標點符號,會轉換失敗
3.  過長的文字,即使有標點符號,轉換也可能會出問題(暫時未定未到問題原因)
4.  幾千字以上或者上萬字推薦自己分成多個 txt 檔案批量轉換
5.  可以在文字中加入 SSML 標籤語言解決停頓、中斷、多音字情況
6.  底部控制欄綠色的下載按鈕可以在轉換完成後下載到

2. SSML 轉換為語音

功能介紹: 將 SSML 標籤文字轉為語音

使用方法:

1.  將 SSML 標籤內容寫入下方的文字框,即內容輸入區域
2.  右邊控制欄選擇需要的語音、風格和角色等
3.  點選開始轉換

3. 文字檔案批量轉換

功能介紹: 將多個 txt 文件分別轉為 MP3 檔案

使用方法:

1.  點選選擇檔案可以選擇多個文字檔案,選擇完成後,可以看到檔案的路徑、字數以及當前為ready狀態
2.  不需要的檔案可以點選同行的刪除按鈕
3.  在右側的設定區域配置好相應的選項後,點選開始轉換,即可轉換多個檔案為 mp3;預設儲存路徑為桌面,可以再設定頁面設定儲存檔案路徑

注意:

1.  文字較長時,軟體內部會自動對檔案進行切片,每 300 字左右檢測下一個標點符號,並在此處分割,依次轉為語音後自動拼接
2.  文字較長且沒有標點符號,會轉換失敗
3.  【重要】文字檔案格式應為utf-8

4. 控制欄

功能介紹: 對轉換的語音進行精細化控制

使用方法:

1.  選擇設定國家語言。軟體不支援翻譯,意思是你輸入的文字內容,因該是此語言能夠解析的
2.  選擇設定語音,可以在右側點選綠色播放按鈕試聽該聲音
3.  選擇設定風格、角色、語速和音調
4.  這些配置修改完成後可以儲存配置,放便下次直接使用
5.  如果你給配置的名字設定為預設,則開啟軟體後會直接顯示這個配置

5. 設定頁面

功能介紹:

1.  下載路徑:轉換後的檔案儲存路徑
2.  自動播放:文字/ssml 語言轉語音後,是否自動播放
3.  版本更新彈窗提醒:發現新版本後是否彈窗提醒
4.  試聽文字:在選擇語音時,點選聲音右側播放按鈕播放的內容
5.  模板編輯:刪除在控制欄儲存過的聲音配置

注意:

1.  下載路徑、試聽文字修改完成後需要點選確認
2.  所有設定完畢後推薦點選重新整理配置,不然可能會失效

怎麼才能體驗一下 ?

Gitee 下載地址

藍奏雲 下載地址

1. 下載並解壓

下載最新版本的壓縮檔案,解壓裡面的tts-vue_1.x.x到任意位置後,執行此安裝程式

image.png

2. 執行安裝程式

💡 提示

首次安裝可以選擇儲存位置,再次安裝會預設選擇以前的安裝位置,並且會解除安裝舊版本並重新安裝

選擇為當前使用者還是所有使用者安裝,點選下一步

image.png

選擇安裝位置,點選安裝

image.png

🎉 恭喜您,完成了安裝步驟,安裝成功後即可執行該程式

image.png

嘗試點選右下角的 開始轉換 按鈕,開始你的第一次文字轉語音吧


通過原始碼編譯

通過原始碼編譯的方法適合有開發能力和程式設計基礎的小夥伴,有能力的小夥伴更推薦下載原始碼編譯執行。可以直接在控制檯檢視一些輸出內容,更方便除錯和修改

1. 下載原始碼

原始碼可以從以下倉庫獲取:

github: https://github.com/LokerL/tts-vueopen in new window

gitee: https://gitee.com/LGW_space/tts-vue

```js git clone https://github.com/LokerL/tts-vue.git

OR

git clone https://gitee.com/LGW_space/tts-vue.git ```

或者你可以在倉庫直接下載原始碼的壓縮包。

2. 安裝依賴

在專案根目錄執行

js npm i 執行

js npm run dev 專案打包

js npm run build


常見問題

1. 轉換時間過長或轉換失敗如何檢視原因 ?

解決方法:

點選 設定開啟日誌,檢視日誌檔案

日誌檔案儲存路徑:C:\Users\使用者名稱\AppData\Roaming\tts-vue\logs(記得定期手動清理日誌)

停在「建立webscoket連線...」是因為網路問題

停在「第3次上報...」是你的文本里面有無法解析的內容

經過我多次嘗試,轉換 4 篇 800 字以上的高考作文用時只要 15-20 秒鐘

2. 如何調整多音字的讀音或新增中斷或暫停等 ?

解決方法:

文字內容輸入這個試試,簡單的讀音例子

```
  你好啊
  讀 <phoneme alphabet="sapi" ph="chong 2 liang 4">重量</phoneme> 是不對的
  要讀成“重量”
```

image.png

3. 批量轉換失敗或者聽到都是“汪汪汪”(one one one)的聲音

可能出現問題的原因:

微軟那個介面只允許 utf-8,其他編碼的文字都會變成 1,英文讀起來就是 one,連著就是汪汪汪了

解決方法:

  1. 已經存在的 ANSI 編碼的文字文件,可以點選檔案 → 另存為 → 編碼:UTF-8
  2. 新建的文字文件儲存檔案格式及的選擇 UTF-8

4. 點選下載沒反應,下載檔案為文字文件?

可能出現問題的原因:

1.  正確的下載方法是轉換完成後點選綠色的下載圖示,而不是播放器控制元件的擴充套件下載,點播放器控制元件的下載會預設儲存為 xxxx.txt
2.  點選綠色下載沒反應?因為預設儲存位置是桌面,所以要檢查當前登入的賬戶有沒有寫入桌面檔案的許可權

解決方法:

1.  嘗試更改預設下載位置為其他盤
2.  以管理員身份執行此軟體
3.  要是想直接用播放器控制元件下載音樂,可以在儲存的時候更改檔名字尾為.mp3 即可(如果你已經下載完了,可以嘗試更改下載的文字文件.txt 字尾名為.mp3)

百度到底有沒有收購?

大家進來應該都是比較在意這個,那麼至於百度有沒有收購...

em....

image.png

這個專案吧,用來的本來就是微軟的介面,且,百度也有自己的介面

所以百度的工作人員只是以為有跨時代的技術進展才來試探打聽的 😂