先日、「この内容をテキストとして残しておきたい」と思う動画に出会いました。内容をしっかり理解したり、あとから検索できる形で残しておくためには、文字起こしがとても役に立ちます。
ただし、文字起こしにはいくつか課題があります。
-
動画ファイルを直接アップロードする必要があるツールが多い(外部サービスに渡すのは避けたいケースもある)
-
処理に時間がかかる(リアルタイム性がない)
-
無料だと制限が厳しい
今回対象にした動画は ファイル抽出できない仕様 のため、保存して後から処理することはできません。つまり、「再生中の音声をそのままリアルタイムに文字起こしする」必要があるわけです。
そこで試してみたのが、
-
OBS LocalVocal
-
Windows 11 標準の Live Captions
の2つ。いずれも無料で導入できる手段ですが、実際に触ってみると精度や使い勝手に大きな違いが見えてきました。
OBS LocalVocal
特徴
OBS LocalVocal は、人気配信ソフト OBS Studio に追加できるプラグインです。
内部では OpenAI の Whisper モデルを利用しており、PCで再生している音声をリアルタイムに文字起こしできます。
-
音声入力に「字幕生成用の追加機能」を組み込む形で動作
-
出力は字幕表示(画面上)とファイル保存(.txt / .srt)が可能
-
Whisper をベースにしているため、オフラインで動作(インターネット不要)
-
無償で利用できる
「配信や録画と同時に文字起こししたい」といった用途に適しているのが大きな特徴です。
導入手順
OBS LocalVocal を導入するには、以下の3段階が必要です。
-
OBS Studio のインストール
-
公式サイトから最新版をダウンロードしてインストール。
-
-
LocalVocal プラグインの導入
-
GitHub から LocalVocal をダウンロードしてインストール。
-
-
設定
-
OBS を起動し、文字起こし対象とする音声入力(例:マイクやデスクトップ音声)に 「LocalVocal トランスクリプション」フィルタ を追加。
-
出力形式(字幕を画面に表示するか、テキストファイルに保存するか)を選択できる。
-
モデル(Base / Small / Medium)や推論方式(CPU利用、量子化版など)を選択可能。
-
使ってみた感想
導入自体はそれほど難しくありませんでしたが、いくつかハマりどころがありました。
-
Whisper モデルのダウンロード問題
ステータス上はダウンロード成功しているのに、実際はダウンロードに失敗しており、手動でモデル(.binファイル)をダウンロードして配置する必要がありました。 -
チューニングに苦戦
モデルのサイズや量子化版を変えて検証しました(Base、Small、Medium/Q5、Q8)。
軽量モデルだと処理は速いものの精度が下がり、重いモデルは精度が高い代わりにリアルタイム処理が追いつかない、とトレードオフの関係にあります。 -
処理の遅延が大きい
30分の動画を文字起こししたところ、生成が終わるまで1時間以上かかったこともあり、リアルタイム性という点では厳しさを感じました。
総じて、オフライン環境で字幕を同時生成できるのは便利ですが、パフォーマンスと精度、そして自身のPCスペックを考慮すると採用は難しいという結論になりました。
(参考スペック:Intel Core i7-1360P、メモリ32GB、GPUは内蔵 Intel Iris Xe Graphics)
Windows Live Captions
特徴
Windows 11 に標準搭載されている「Live Captions(ライブキャプション)」は、OSレベルでリアルタイムに音声を文字起こししてくれる機能です。
YouTube や Zoom など、ブラウザやアプリで再生される音声を即座に字幕化して画面に表示できます。
-
標準機能なので追加インストールは不要
-
リアルタイム性が非常に高く、ほぼ遅延なく字幕表示が可能
-
日本語にも対応しており、精度も悪くない
-
無償で利用できる
ただし、字幕は画面に表示されるだけで、テキストファイルとして保存する機能は備わっていません。
そこで今回は、 「LiveCaptions-Translator」 を併用することで、字幕のログをテキストファイルとして保存しました。
導入手順
Live Captions を使うには非常に簡単です。加えて、保存用に LiveCaptions-Translator を組み合わせました。
-
Live Captions の起動
-
Win + Ctrl + L
を押すと Live Captions が起動します。 -
初回利用時には音声認識用のパッケージが自動的にダウンロードされます。
-
-
表示のカスタマイズ
-
字幕の表示位置(上部/下部/フローティング)やサイズを調整可能。
※LiveCaptions-Translatorを使う場合、字幕の表示位置はフローティングにする必要があります。
-
-
ログ保存(LiveCaptions-Translator の利用)
-
LiveCaptions-Translator を起動すると、Live Captions の出力をテキストファイルに保存できます。
-
本来は翻訳機能付きですが、今回は翻訳は利用せず、ログ保存機能のみを活用しました。
-
使ってみた感想
実際に 30分の動画で試したところ、以下の特徴がありました。
-
リアルタイム性が圧倒的
OBS LocalVocal のようにトランスクリプト生成に遅延が生じることは無く、ほぼ同時に字幕が表示されるため内容を追いやすいです。 -
日本語の認識精度も高い
特に標準的な話し方の動画であれば、意味の取り違えが少なく、かなり自然に読める字幕になりました。 -
ログ保存の工夫が必要
Live Captionsだけではトランスクリプトの保存ができないため、今回は LiveCaptions-Translator を併用しました。これで リアルタイム性と保存性の両立が可能に。
まとめ
今回、OBS LocalVocal と Windows Live Captions の 2 つの方法でリアルタイム文字起こしを検証してみました。
OBS LocalVocal はオープンソースの Whisper モデルを OBS に統合できる魅力的な仕組みでしたが、
モデルのダウンロードや設定で手間がかかり、さらに処理の重さから リアルタイム性の確保が難しい という課題がありました。
一方、Windows Live Captions は標準機能ならではの安定性と軽さで、リアルタイム性・精度の両方で非常に優秀でした。
保存機能が無いという最大の欠点は、LiveCaptions-Translator を組み合わせることで、解決でき、実用的な文字起こし環境 を構築できました。
結果として、私の環境(Intel Core i7-1360P / メモリ 32GB)では、
「リアルタイム性を重視するなら Windows Live Captions + LiveCaptions-Translator」
という結論に至りました。
今後は精度や機能の改善に期待しつつ、目的に応じてツールを使い分けるのが良さそうです。