快轉到主要內容

自動語音辨識,使用Kdenlive給影片自動上字幕

Kdenlive
✍ 切換正體/簡體字
Ivon Huang
作者
Ivon Huang
目錄

說到影片上字幕,要節省力氣就得要依賴語音辨識服務,並自動轉成字幕檔,再加到影片。

自由開源軟體Kdenlive除了 能給影片加字幕、匯入字幕以外,其實也有內建VOSK的多國語音辨識,並自動轉成字幕軌的功能(speech to text),要另外搭配pyTranscriber使用也可以。

下面先來看成果,再來看如何使用。

Kdenlvie版本:22.08.1

1. 語音辨識準確度 #

為什麼要先看成果呢?因為VOSK是使用開源的模型(你要 自己訓練也可以),中文辨識準確度差Google語音辨識很多,VOSK還不成熟。如果還是想試試就繼續往下看。

我使用Kdenlive的「VOSK語音辨識」以及外部工具「 pyTransricber」對比。這些軟體在辨識語音之後會自動生成字幕,只要把字幕軌加到影片就可以了。

二個工具就英文來說辨識是沒問題,緩慢的中文講話語速也是可以辨識。

但若到了一般台灣人說話的語速問題就很大了。這個片段出自 他比你們想像更有料! 0:26秒處

第一個是VOSK語音辨識

第二個是Google語音辨識

跟原始影片對比,可以看到台灣國語可真是連Google語音辨識都難倒了,但使用Google語音辨識的pyTranscriber效果仍然比VOSK好。

在這方面可能要尋求台灣國內專業的在地廠商才行,例如雅婷逐字稿這種軟體。

2. Kdenlive安裝VOSK語音辨識 #

VOSK需要Python才能運作,請在電腦上安裝最新版 Python執行環境

  1. 開啟Kdenlive,點選最上方的設定 → 設定Kdenlive,在左邊的選單找到Speech to text

  2. VOSK Models網站下載語言模型,例如中文就下載vosk-model-cn-0.22.zip

  3. 開啟檔案管理員,將下載的zip拖曳到剛剛開啟的Speech to text視窗,等幾秒自動安裝。

  4. 點選Project→Subtitles→Edit Subtitle Tool,啟用字幕軌

  5. 在時間軸的字幕軌上會出現一條藍線,拉長到想要語音辨識的片段。

  6. 點一下字幕軌左邊的魔法棒圖示

  7. 點選Timline Zone (selected track),選取Language為vosk-model-cn-0.22,再按Process。

  8. 處理好後會自動將字幕加到字幕軌。接著按照需要微調字幕。

  9. 如果覺得準確度很差(真的蠻差的),請改用以Google語音辨識為基礎寫的 pyTranscriber來生成字幕檔吧,再 將字幕檔匯入Kdenlive

相關文章

Termux崩潰 [Process completed (signal 9)] 錯誤的解決方法
智慧型手機 Termux教學 Termux
用Wine在Linux上跑Windows軟體本身就是很奇怪的事情
人文藝術 自由軟體議題 Wine
用電腦虛擬機體驗手機Linux系統:postmarketOS QEMU使用教學
智慧型手機 真Linux手機 postmarketOS

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要登入Github帳號才能留言。支援markdown語法,方便您張貼程式碼,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。無論有無登入皆可留言。此處留言只有本站參與者看得到。若您選擇以訪客身份匿名留言,就不會收到後續回覆通知。