2022年5月20日 星期五

透過 Colab 批次下載 FreeTTS mp3

2022年5月20日 星期五

上一篇「雄 : 批次下載 FreeTTS mp3」談到以 wget、jq 和 Windows 的批次檔,將清單檔案中的英文,一行行解析後,到 FreeTTS 網站中合成 TTS 語音,並將 MP3 檔案下載回來。在那之前,其實已經先在 Google Colab 中,以 Python 寫了個「free-tts-mp3-dl.ipynb」的「筆記本」,測試過下載的程序。畢竟 Python 還是比較強大,此外, Colab 是在網頁瀏覽器中操作,環境比較單純,使用者不用再另外安裝別的工具,又可以跨平台使用,所以還是建議優先使用本篇的方法。

Google Colab 中 free-tts-mp3-dl.ipynb 的共用網址如下:

建立副本

因為是用「檢視者」的方式共用的,所以如果有需要將自己的設定儲存,建議首次使用時,在雲端硬碟儲存複本,可以在開啟共用的網址後,找找上方有個「複製到雲端硬碟」的按鈕,然後按下去;或是按在主選單「檔案」中的「在雲端硬碟中儲存副本」。以後要用時,就可以開啟自己的 free-tts-mp3-dl。

按「複製到雲端硬碟」建立副本

下載 mp3 檔案

在 Colab 中使用 free-tts-mp3-dl 批次下載 FreeTTS 的 mp3 檔案,只要三個步驟:

  • 設定 ttsVoiceName 指定要使用的 TTS 聲音。
  • 設定 textMessages 指定要下載的英文。
  • 按程式區塊左上角的 [播放] 鈕執行程式並等待結果。

設定 ttsVoiceName 選擇聲音

在 Free TTS 網站中, English (US) 的的聲音選單中有12個可以選擇,為了方便使用,我將它們的相關設定都預先建立好了,只要在 free-tts-mp3-dl 中找到「ttsVoiceName」這個變數後,將等號右邊,引號內的名稱字串換成想下載的即可選定。

設定 ttsVoiceName 決定聲音

可用的聲音名稱都列在註解中(井字號開頭,綠色的字),可供參考,並複製使用。

設定 textMessages 

free-tts-mp3-dl 會一行行分析 textMessages 變數中的文字;一行中,只會取出英文、空白、數字,遇到第一個非英文用的的符號即終止該行的分析。所以在 textMessages 中,可以直接貼入 HTML5 FUN 中使用到的英文相關題庫設定,或是單純的英文字串。

下圖中,範例貼入的是 HTML5 FUN 單字高手/English1200 用的題庫 

在 textMessages 中填入要下載的英文清單

修改設定內容時,直接將上圖框框中的範例置換成想下載的英文,一行一個英文單字或句子。

按「播放」執行下載程序

在 Colab 中,每一個程式區塊(儲存格)的左上角會有一個「播放」鈕,按下去,就可以開始執行程式的功能。

按「播放」鈕執行程式

如果已經完成前兩步驟,設定完 ttsVoiceName 和 textMessages ,就可以按程式區塊左上角的「播放」鈕,開始分析哪些英文要下載 MP3 檔案,並送資料給 Free TTS 網站合成語音。下載回來的 MP3 檔案會暫存在您的 Colab 空間中,全部的 .mp3 檔案都由網站抓完了以後,會打包成一個 .zip 的壓縮檔,並自動下載到您的電腦中儲存。

所以按完步驟 3 的播放鈕,就喝杯水,稍等一下囉!

Q&A

  • Q : 一次可以下載多少個 MP3 檔案?
    A: 因為 FreeTTS 網站有防濫用的機置,建議不要一次下載太多個;分成多次完成,也可以比較善待這個好用的網站。
  • Q : 為什麼 MP3 檔案大小都是 0 ,無法播放 ?
    A : 會這樣子,有可能是 ttsVoiceName 設定錯誤(名稱必須完全一樣,多個空白都不行);或是 FreeTTS 網站有問題;再不然就是被 FreeTTS 防濫用,暫時鎖定不能使用了。
  • Q : 為什麼出現代碼 429 的訊息,無法下載到 .mp3 ?
    A : 可能一次下載太多,被 Free TTS 網站列入濫用名單了。

相關文章


沒有留言:

張貼留言

 
雄::gsyan © 2009. Design by Pocket