前言(廢話一堆,可忽略不看) 試了不少影音編輯工具(平台)的自動語音辨識產生字幕的功能以後,發現很多看起來都差不多;後來看到了這個 auto-subtitle 的專案:
它是使用 OpenAI 的 Whisper 來進行語音辨識,哈!只能說自己實在太孤陋寡聞了,現在才注意到有 OpenAI Whisper。Whisper 有開源,它的專案連結在底下:
如果已經準備好 Python 的環境,可以將它安裝在本機上,在專案中有簡單的說明。如果想快速測試,那當然是直接使用 Google 的 Colab 來建置最方便。Colab 已經有基本的 Python 環境,Whisper 需要的 ffmpeg 及一些可能需要用到的套件都內建好了。
好康A~跟您分享 好東西,只給自己用太可惜了,所以我將自己在本機上實驗的程序,移植到 Google Colab 中,還加上了一些功能,大家可以直接使用,不用管安裝的過程。
這個 OpenAI Whisper@Colab 有以下的功能:
可輸入 Youtube 影片的網址,產出影片的字幕檔後下載。 可輸入 Youtube 播放清單的網址,產出清單中所有影片的字幕檔,並置入壓縮檔中後下載。 可輸入 Vocaroo 線上錄音的網址,解析出音檔的文字內容。 可讀取上載到 Colab 暫存空間的影音檔案,產出字幕內容後下載。 v.2 版增強的功能:
可輸入已設定為「公開分享的」Google Drive 影音網址(v.2 版才支援) 可輸入檔名為「.txt」的轉換清單檔案,裡面一行一個要辨識的網址或是檔名,執行時就可以批次進行辨識(v.2 版才支援) 可自訂輸出的資料夾名稱(v.2 版才支援) 可自訂是否要覆蓋已經辨識過的文字檔。(v.2 版才支援)
工具網址 這個「OpenAI-Whisper-語音辨識-製作字幕檔」的工具存放在 Google Colab 的筆記本,網址如下:
影片說明 底下的影片,簡單地介紹一下如何使用這個工具製作字幕檔:
VIDEO
重點整理 關鍵程序截圖並說明如下:
建立自己的副本 ,才能執行裡面的程式。之後都開副本就好。
[圖1] 建立自己的 Colab 筆記副本
幫工具加上星號 ,在雲端硬碟比較好找。按一下 [圖2] 箭頭 1 所指的星星,即可將自己的副本列入 Google 雲端硬碟的左側欄的「已加星號」的分區中。
[圖2] 在自己的副本中操作
進行設定 :如 [圖2] 的箭頭 2 ,輸入影音的路徑、選擇語言代碼、輸出的格式、使用的辨識模型...等設定。
執行程式 :如 [圖2] 的箭頭 3,按一下「播放」鈕,即可以開始執行 Whisper 的安裝與語音辨識程序。
等候辨識結果 :等候的時間需視影片或聲音檔的聲音長度及是否使用 GPU 運算,當然囉,選用 Whisper 的哪一種辨識 Model 也有差異,small 的 model 一定花的時間比 medium 的 model 要少很多,當然,辨識的正確率也會有差別。以前面的介紹影片為例,影片的片長是 5分22秒,選用 whisper medium 的 model 來辨識,花了快二十分鐘。(註:後來開啟了 GPU,並使用 large 的 model,只花了一分多鐘,建議開啟 GPU 使用;Goolge 讓免費版的 Colab 一天可使用 12 小時左右的 GPU。)
[圖3] 等候時間隨選用的 model 而有差異
如何上載電腦的檔案到 Colab 並進行語音辨識 如果想辨識的影音不在網路上,可以立即上載到 Colab 的「暫存」空間,注意!它是「暫存的」,當我們下回重新開啟 Colab 的筆記本時,上載的檔案會不見哦!下面看一下如何使用這個暫存空間(它的額度和 Google 雲端硬碟是分開算的)。
展開「暫存空間」:按一下左側欄中的「資料夾」圖示,即可展開暫存空間來上載或管理檔案。
[圖4] 展開暫存空間
上載檔案:當「暫存空間」展開後,只要將想上載的檔案,以拖曳的方式,拉進「暫存空間」即可。
[圖5] 以拖曳的方式上載檔案
溫馨提醒,暫存區是會被清空的
[圖6] 暫存區是會被清空的警告訊息
設定檔案名稱:等影音檔案上載完畢,就可以設定要辨識的檔案名稱,如 [圖7] 箭頭1 ,在「url」的欄位中,輸入檔案的「完整名稱」。
[圖7] 設定檔案名稱並執行程式
執行程式:都設定參數了,就可以按 [圖7] 箭頭 2 所指的「播放」鈕來執行語音辨識的程序。
Q & A
Q : 可不可以辨識自己雲端硬碟中的影音檔案? A : 當然可以。看一下 Colab 「暫存區」上方的圖示,其中有一個是「連接雲端硬碟」的圖示,按下去以後,照指示,就可以將雲端硬碟變成暂存區中的一個資料夾來存取檔案了。找到要使用的檔案後,按一下檔案,檔案的右邊會有「三個點點」,按一下「三個點點」即可出現檔案管理的選單,按選單中的「複製路徑」,就可以取得「url」要填入的檔名。 Q : 如何加快辨識的速度? A : AI 需要大量的運算,如果能打開「GPU」的選項,速度會快很多倍,所以一定要在自己的 Colab 中,選用 GPU 的選項,設定的方法: 1.在 Colab 上方主選單中,按一下「編輯」。 2.按一下「筆記本設定」。 3.在「筆記本設定」的「硬體加速器」中,選「GPU」。
相關連結
自己的雜記(還是廢話,請忽視) 順便筆記一下,免得忘記又重新掉坑的。
Windows 7 安裝最近版的 Anaconda ,出現「Failed to create menus」的錯誤訊息而無法安裝。因為系統太舊,無法安裝 Python 3.9,所以卡住。只好改用舊版的 Anaconda,像 2021.05 是使用 Python 3.8 的。舊版的可以在這裡找到:
最後改安裝「Anaconda3-2021.05-Windows-x86_64.exe」。
照說安裝完 openai-whisper 後,除了 python 的套件,應該也會有 .exe 的執行檔,但是我在一台沒有安裝過 Python ,全新安裝 Anaconda 的 Windows 10 上,直接執行 whisper 的命令卻出現找不到指令的錯誤訊息。查了一下,原來 whisper.exe 被安裝到使用者目錄(ex. userA) ,類似底下的路徑中:
Users\userA\AppData\Roaming\Python\Python39\Script
為了方便使用,可以將該路徑加入環境變數中。
Windows 7 的舊版 Anaconda 則是將 whisper.exe 放到 ananconda 目錄中的 scripts 中,該路徑已經在環境變數的 PATH 裡了。版本不同,安裝方法不同,路徑就得特別注意一下。