音声認識ソフト「whisper」を使って文字起こしをしてみる

Ubuntu
スポンサーリンク

Amazonのアソシエイトとして、当ブログは適格販売により収入を得ています。

自分はPC関連の調べごとをする時、海外の動画を参考にしたりします。
Gamers Nexus」なんか良い例です。

ですが、Youtubeの日本語自動翻訳はなんというかイマイチなので、翻訳をChatGPTなどのチャットAIに任せられないかなぁと思っていたところ、whisperというソフトの存在を知りました。

GitHub - openai/whisper: Robust Speech Recognition via Large-Scale Weak Supervision
Robust Speech Recognition via Large-Scale Weak Supervision - openai/whisper

このソフトで音声ファイルを文字(テキストファイルなど)に起こせます。
そうすれば、チャットAIやllama.cppで意訳できるでしょう。
ついでに意訳したテキストをffmpegを使って元の動画に字幕として焼き付けられれば、動画の内容の理解も深まるというものです。

なんて理想的。

それではやっていきましょう。

whisperを使うために用意するもの

自分のPCはRadeon環境です。ROCmで動作させる方法は次回の記事で書くとして、今回はCPUでの動作になります。

pythonとgitとffmpegが必要になります。
今回はUbuntu(24.04.3)での動作なので、pythonは初めから入っていると思います。
gitも入っていますが一応念の為コマンドを叩きましょう。
ffmpegはaptでインストールします。

sudo apt install -y git
sudo apt install -y ffmpeg
sudo apt install -y python3-venv

次にwhipserをgitでダウンロードします。

cd ~
cd install
git clone https://github.com/openai/whisper.git
cd whisper

入力する音声を置いておくフォルダと、起こした文字を出力するフォルダを作っておきます。

mkdir -p material output

仮想環境を構築しアクティベート。

python3 -m venv venv
source venv/bin/activate

pipのアップデートとrequirements.txtのインストール。

pip install -U pip setuptools
pip install -r requirements.txt

whisperのインストール。

pip install . 

以上です。

音声ファイルを用意

whisperは入力に音声ファイルが必要です。
動画ではダメです。

今回は、先程作った「material」フォルダに元になる動画ファイルを置いて、そこから音声ファイルを抜き出してみます。

カレントディレクトリは「whisper」にあるとして、

ffmpeg -i ./material/intel_arc.mp4 -vn -c:a pcm_s16le ./material/test.wav

とコマンドを叩きます。

この場合「./material/intel_arc.mp4」は音声を抜き出したい動画ファイルの名前。
「pcm_s16le」は音声コーデック、wavはコンテナの指定です。
では出力した「test.wav」を使って話を進めます。
ちなみに「Gamers Nexus」の「Intel Arc GPU Driver Problems Revisited: 2025 Arc Graphics Driver Review」から抜き出しています。
33分20秒の動画です。
(Youtubeの動画のダウンロードの仕方については当ブログでは言及しません。)

では音声ファイルから文字起こしをしましょう

現在のwhisperフォルダは以下のようになっていると思います。
この中の「material」フォルダの中に先程作成した音声ファイルが入っているはずです。

そのままターミナルを起動して、

time whisper material/test.wav --model medium --output_dir ./output/

と実行してみましょう。
モデルファイルのダウンロードの後、文字起こしが始まります。

今回は「–model medium」としています。
他には「tiny」「base」「small」「large」「turbo」などがあります。

英語部分をChatGPTに日本語に意訳してもらいます

「後で動画と結合するので、英語の部分だけ意訳してjapanese.srtで出力して」

とお願いすると、

意訳したsrtファイルと元の動画を結合します

では結合していきますが、ファイル構成は

カレントディレクトリが「whisper」にある時、結合コマンドは

ffmpeg -i ./material/intel_arc.mp4 -vf "subtitles=filename='./output/japanese.srt'" -c:a copy ./output/output.mp4

になります。

完成!

うん、大丈夫そう。
こんな感じで今後も海外の情報も取り入れていけたらと思います。
次回は、ROCmを使ってもっと早く文字起こしする記事を書いていきます。

今回は以上です。

ASUS AMD Dual Radeon RX 9060 XT 16GB GDDR6ビデオカード DUAL-RX9060XT-16G 国内正規代理店品
グラフィックスコア : AMD Radeon RX 9060 XT / バスインターフェース : PCI Express5.0 / OpenGL : OpenGL 4.6コアクロック : OC mode (GPU Tweak III): u...
SAPPHIRE PULSE Radeon RX 9060 XT GAMING OC 16GB グラフィックスボード 11350-03-20G VD9219
AMD RDNA 4アーキテクチャを採用し、16GB GDDR6メモリを搭載した高性能グラフィックボードです。高解像度ゲーミングや映像処理に優れた性能を発揮します。●カラー:ブラック●製品サイズ:L240×W124×H46.1mm●グラフィ...
SAPPHIRE PURE Radeon RX 9060 XT GAMING OC 16GB グラフィックスボード 11350-02-20G VD9221
AMD RDNA 4アーキテクチャ採用、16GB GDDR6メモリを搭載した純白デザインのグラフィックボードです。高性能と美しさを兼ね備え、映像美と安定性の両立も実現しています。●カラー:ホワイト●製品サイズ:L240×W124×H46.1...
Amazon.co.jp: ASUS AMD Radeon RX 9060 XT ビデオカード 16GB GDDR6 OCエディション PRIME-RX9060XT-O16G 国内正規代理店品 : パソコン・周辺機器
Amazon.co.jp: ASUS AMD Radeon RX 9060 XT ビデオカード 16GB GDDR6 OCエディション PRIME-RX9060XT-O16G 国内正規代理店品 : パソコン・周辺機器

出荷販売がAmazonではありませんが、クーポン付きで安く手に入るXFX製品もあるようです。

Amazon | 【Amazon.co.jp限定】XFX Swift AMD Radeon™ RX 9060 XT 16GB Gaming EditionゲーミングエディションRX-96TSW16BQ-1Y国内正規品 | XFX | グラフィックボード 通販
【Amazon.co.jp限定】XFX Swift AMD Radeon™ RX 9060 XT 16GB Gaming EditionゲーミングエディションRX-96TSW16BQ-1Y国内正規品がグラフィックボードストアでいつでもお買い...

コメント

タイトルとURLをコピーしました