前幾天利用 Faster Whisper 轉 VOA Learning English ( https://learningenglish.voanews.com/ ) 的 MP3 音檔為 SRT 字幕檔時,因為忘了設定語音的語音代碼,就這麼用了前一次使用的中文的代碼「zh」,哈!也太奇妙了!Whisper 真的給了我中文的字幕吔!為了證明自己不是在作夢,又重新用了另一個英文的音檔,一樣的,語言代碼使用「zh」,重新玩一次,輸出結果還是中文!語言代碼改用「ja」,就變成日文了(圖1),不過日文似乎比較不穩定,常會出現英文的。
[圖1] 英文音檔輸出日文的字幕檔 |
下面來以 July 21, 2024 這篇「Evidence of ‘Rotten Egg’ Gas Found on Jupiter-like Exoplanet」為例,簡單地記錄一下,怎麼將 VOA Learning English 的音檔轉為中文字幕檔。
先開啟 VOA 的頁面,打開底下這個網址:
[圖2] 找出 VOA 文章音檔下載網址 |
如 [圖2] 在文章的語音播放器右下角有一個「Direct link」,點一下即可出現 MP3 的下載清單,對準其中一個按滑鼠右鍵,並選取「複製連結網址」。接下來就可以將網址貼到我之前設計的 Faster Whisper 或是 OpenAI Whisper 的 Google Colab 筆記本中了。
以 Faster Whisper 為例,如 [圖3] ,
[圖3] Faster Whisper 的設定 |
進行幾項設定:
- url : 「聲音檔的來源」貼上由 VOA Learning English 複製來的 MP3 網址。
- lang : 語音的語言代碼如果想要英文的字幕檔,就選「en」;想要中文的,就選「zh」。
- outputFormat : 輸出格式選「srt」。
- modelType : 「使用哪一種辨識模型」選取「large-v3」。
- initial_prompt : 「提示語」如果是想輸出繁體中文,就選「以下是繁體中文的句子」。
[圖4] 語言代碼選「zh」就輸出中文字幕檔 |
[圖5] 語言代碼選「en」就輸出英文字幕檔 |
看看上面 [圖4] 的語言代碼選「zh」,最後輸出中文的字幕檔;[圖5] 的語言代碼選「en」,最後輸出英文的字幕檔。它們都是用這個 MP3 音檔來進行語音辨識的:
OpenAI Whisper 明明只支援將其它語言語音轉文字以後,翻譯為英文,卻可以這樣玩;查了一下,有人說這可能是 OpenAI Whisper 的 bug,但是這功能也太好用了,希望不會從專案中移除。
接下來,我想試著看看能不能將兩種不同語言的字幕檔合而為一,這樣子搭配 HTML5 FUN Audio Player 來使用:
看看 OpenAI Whisper 和 Bing Translator 誰翻譯得好 ^_^
很酷的功能
回覆刪除哈~ 我也這麼覺得。所以有時出錯還滿好的,會發現新天地。不過,後來我用 OpenAI Whipser 跑出來的結果,好像比 Faster Whisper 的完整,可能要再比較看看。
刪除