Qwen3-ASRを使って動画音声の文字起こしをする

環境:Visual Studio Code, Claude Code(Sonnet 4.6)

英語学習の目的で日本語・英語の字幕を同時に並べる動画プレイヤーを作りたい、と思っていたことがありましたが、いつのまにかローカルLLMで出来るようになっていました。

仕様

今回試作してみた動画プレイヤーの特徴は

・動画の文字起こしをして音声を字幕へ変換する
・字幕を日本語に翻訳する
・再生中に字幕の単語にマウスオーバーすると辞書が出る

言語モデル
Qwen3-ASR(音声認識モデル)
Qwen3-ForcedAligner(高精度なタイムスタンプ生成)
Qwen3(翻訳と辞書)
Qwen3シリーズについて

フロントエンド
Electron:HTML, CSS, JavaScriptなどのWeb技術を用いてデスクトップアプリを開発できるフレームワーク

バックエンド
FastAPI:Pythonで高速なWeb APIを型ヒントベースで効率よく作れるモダンなフレームワーク

動画の文字起こし

今回もClaude Codeに作成してもらいました。文字起こしに使うQwen3-ASRは1.7Bにし、翻訳と辞書に使うモデルはQwen3から大きさを選べるようにしました。

初期画面。動画の読み込みから文字起こし、翻訳、と時系列で並べた。

動画素材(mp4)の用意

mp4ファイルを用意します。これはちょっとグレーなので詳細は省きますが、某動画サイトから動画をダウンロードするツールをClaude Codeにつくってもらいました。

文字起こし

Qwen3-ASRとQwen3-ForcedAlignerを使ってsrtファイルを作成します。ASRだけだと文字のタイミングがずれるのでForcedAlignerも使ったほうがよい。

12
00:00:43,440 --> 00:00:47,520
no introduction The title of our conversation is the day after AGI

13
00:00:47,520 --> 00:00:50,880
which I think is perhaps slightly getting ahead of ourselves because we

14
00:00:50,880 --> 00:00:54,320
should probably talk about how quickly and easily we will get there

15
00:00:54,720 --> 00:00:56,080
And I want to do a bit of a sort of update

16
00:00:56,080 --> 00:00:58,560
on that and then talk about the consequences So firstly on the

日本語字幕への変換にはQwen3を使いました。1.7Bや4Bではクオリティが低かったので8Bや14Bを使いました。大きいモデルほど顕著によい結果になりますね。

翻訳

英語のsrtから日本語のsrtを作成します。

57
00:03:22,720 --> 00:03:25,600
自然科学の分野は、それよりもずっと難しく、出力が必ずしも分からなくてもいいです。

58
00:03:25,600 --> 00:03:28,880
あなたが構築した化学化合物や、物理に関する予測が、

59
00:03:28,880 --> 00:03:32,480
正しいかどうかは、実験でテストしなければなりません。

60
00:03:32,480 --> 00:03:35,520
それらはすべて時間がかかるので、私はまたいくつかの…と考えています。

字幕単位の翻訳は意味が通らなくなることもあるので、直前の字幕をいくつかLLMに渡して日本語に翻訳させてます。それでもやはり綺麗にはならないので、難しいですね。とはいえ参考程度の日本語字幕があるだけでもだいぶ助かります。

動画プレイヤー

最近はもっぱら最先端で活躍する人たちのインタビュー動画ばかり見ている。

Qwen3 1.7Bを使って、マウスオーバー辞書の機能をつくりました。辞書程度なら8Bなどを使わなくても1.7Bで十分ですね。

気になる単語をタイムスタンプ付きで単語帳に登録する機能なんかがあると英語学習によいかもしれない(動画と紐づいた単語のデータベース化)。いろんな可能性が考えられますね。

感想

某動画サイトでも自動字幕や自動翻訳をしてくれるようになっていて、どうやってやっているのか不思議に思っていましたが、これが個人でもできるようになってちょっと感動しました。全くよくわからないドイツ語やロシア語も読み取れてちょっと嬉しかった。

とはいえ問題はすでに私自身が語学学習への情熱を失っていることですかね・・。もっと早くこういったものがでてきて欲しかった。

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