EasyTranscribe(おまかせ文字起こし)は何でできているか。Windows版の動作環境と、同じものを自分で組むときの材料

未分類

EasyTranscribe(おまかせ文字起こし)は何でできているか。Windows版の動作環境と、同じものを自分で組むときの材料

「動画を開いてボタンを押すだけ。完全ローカル・無料・サービス終了なしの文字起こしツール」を掲げるEasyTranscribe(おまかせ文字起こし)のWindows版ZIPをダウンロードした。 展開する前に、配布サイトとREADME、GitHubのソースとビルド設定を読んで、動作環境と中身を確かめた。 何でできているかが分かれば、同じものを手元で組むのに何を入れればよいかも分かる。

結論を先に置く。

  • 九州大学の佐々木玲仁研究室が開発した、MITライセンスの無料ソフトである。文字起こしは手元のPCで完結し、音声や動画を外部へ送らない
  • 中身は、OpenAIが公開している音声認識モデルWhisperのコマンドラインとffmpegを、PyQt6の画面から呼ぶ1本のPythonスクリプトである
  • Windows版ZIPにはWhisperもffmpegも入っていない。初回起動時にwingetとpipでPython、ffmpeg、openai-whisperを取りに行く
  • GPUを使うのはApple Silicon Macだけで、WindowsはCPU処理になる。READMEは動画の長さの3〜10倍の時間がかかると書いている
  • 同じものを自分で組むなら、Python、openai-whisper、ffmpegの3つで文字起こしとカットは動く。画面が要るならPyQt6を足す

配布サイトが約束していること

配布サイトは、用途を研究向けと動画制作向けの2つに分けて機能を並べている1

研究向けには、Whisperによる文字起こし、複数ファイルのドラッグ&ドロップによる一括処理、会話分析ツールELAN用のEAF書き出しがある。 発話間の沈黙を「[間]」として秒数つきで記録する機能と、無音区間も含めて全区間を漏れなく記録する「しきつめ」機能もこちらに入る。

動画制作向けには、文字起こし結果から残したい区間だけ選んでカット出力する編集機能、「えー」「あの」を8言語のリストから自動除去するフィラーカット、太ゴシックの白文字に黒縁取りで映像に直接焼き込む字幕機能がある。 縦動画は自動で検出する。

FAQでは、料金と守秘について次のように答えている。

  • 無料で、回数、時間、ファイル数の制限はなく、アカウント登録も要らない。MITライセンスで商用利用もできる
  • 文字起こしはすべて手元のPCの中で行われ、音声や動画のデータが外部のサーバーに送られることはない
  • インターネット接続が必要なのは、最初のセットアップと、使うモデルを初めて選んだときのダウンロードだけである

v1.2.12からは、同じファイルをもう一度文字起こしするときに、編集済みの字幕ファイルを「元の名前.backup.srt」として自動で退避するようになった。

動作環境として書かれていること

配布サイトとREADMEに書かれている動作環境をまとめる2

項目内容
配布形態MacはApple Silicon用dmg、WindowsはZIP。最新はv1.2.12(2026年9月2日公開)
Windowsの起動ZIPを展開してからEasyTranscribe.exeをダブルクリック。「Windowsによって保護されました」が出たら「詳細情報」から「実行」
既定のモデルlarge-v3-turbo(約1.6GB)。精度はlarge-v3にほぼ並び、それより速い
精度優先のモデルlarge-v3(約2.9GB)
軽いモデルmedium(約1.5GB)、small(約0.5GB)、base(約0.15GB)、tiny(約0.08GB)
処理速度Apple Silicon Mac(M1以降)はGPU利用。WindowsとIntel MacはCPU処理で、動画の3〜10倍程度の時間
対応する動画mp4、mov、avi、mkv、m4v、webm
対応する音声mp3、wav、m4a、aac、flac、ogg
対応言語Whisperは100言語に対応。画面で選べるのは主要14言語と自動検出
書き出しSRT、時間つきTXT、CSV(BOMつきUTF-8)、EAF

READMEには「Anaconda または Miniconda」が必須要件として書かれているが、これはソースコードから動かす開発者向けの記述である。 配布版はPythonのインストールが不要だと同じREADMEに書かれている。 ただし後述のとおり、不要なのはユーザーが手で入れる作業であって、初回起動時にアプリ自身がPythonを入れに行く。

ビルド設定とソースから見たZIPの中身

配布サイトには書かれていないが、GitHubのビルド設定3とソース4を読むと、Windows版ZIPの正体が分かる。

ビルドはGitHub Actions上でPyInstallerを使って行われる。 入れているパッケージはpyinstaller、PyQt6、PyQt6-Qt6、PyQt6-sip、certifiの5つで、Whisperもtorchもffmpegも入っていない。 ZIPが104MBあるのは、PyQt6とPythonの実行環境を固めているからで、Whisperのモデルやtorchの分ではない。

足りないものは初回起動時にアプリが取りに行く。 ソースのセットアップ処理を追うと、Windowsでは次の順で動く。

  1. wingetでffmpeg(パッケージIDはGyan.FFmpeg)を入れる
  2. 実行できるPythonが見つからなければ、wingetでPython 3.12を入れる
  3. そのPythonでpip install openai-whisperを実行する

Apple Silicon Macでは3で入れるパッケージがmlx-whisperに変わる。 Metal GPUで動く別実装で、v1.1.0からこちらが標準になった。 GPU対応はこのmlx-whisperによるもので、ソースにはCUDAやtorchのデバイスを指定するコードはない。 Windows版がCPU処理になるのはそのためである。

文字起こし本体は、whisperコマンドを子プロセスとして呼んでいる。 openai-whisperのときに組み立てているコマンドは次の形になる。

whisper 入力ファイル --model large-v3-turbo --output_format srt --output_dir 出力先 --condition_on_previous_text False --language ja

「[間]を記録」をオンにすると、これに--word_timestamps True--hallucination_silence_threshold 2.0が足される。 つまり、アプリはWhisperのモデルを自前で動かしているのではなく、pipで入れたwhisperコマンドの出力(SRT)を読み込んで画面に並べている。 ダウンロードしたモデルはWhisper側の既定どおり、ホームディレクトリの.cache/whisperに置かれる。

手元のWindows機ではどう動くか

手元のWindows機(Ryzen 7 5800X、メモリ32GB、GeForce RTX 3070)で、初回セットアップが取りに行くものがすでにあるかを確かめた。

前提手元の状態
Python3.11.9がある。wingetでのPython追加は走らないはず
ffmpeg8.1.2のgyan.dev full buildがある。libass入りなので字幕焼き込みも動く
wingetv1.29がある
openai-whisper未インストール。初回セットアップでpipが入れる
torchCPU版の2.10.0が入っている。whisperはこれを使う
GPURTX 3070があるが、このアプリはCPUで動く

ffmpegが見つからないときだけ、セットアップ後に「PATHを反映するためにPCを再起動してください」と案内が出る。 この機ではffmpegがすでにあるので、その工程自体が走らない。

GPUについて補足する。 openai-whisperのコマンドラインは、torchがCUDAを使える環境なら既定で--device cudaを選ぶ5。 アプリはdeviceを指定していないので、CUDA版のtorchを入れておけばWindowsでもGPUで走ると読める。 ただしこれはソースからの推定で、手元ではまだ試していない。

同じものを自分で組むときの材料

配布サイトの「Whisperで100言語に対応」はモデルの性質の話で、「Whisper 100」という名前のライブラリがあるわけではない。 WhisperはOpenAIが2022年に公開した音声認識モデルの名前である。 pipで入れるパッケージ名はopenai-whisperで、こちらもMITライセンスで公開されている6。 EasyTranscribeが呼んでいるのはこのパッケージに付いてくるwhisperコマンドである。

文字起こしとカットだけなら、画面なしでも次の手順で動く。

pip install openai-whisper
winget install --id Gyan.FFmpeg -e
whisper 会議.mp4 --model large-v3-turbo --language ja --output_format srt --output_dir out

初回はモデル(large-v3-turboなら約1.6GB)のダウンロードが走る。 出力されたSRTを見て残す区間を決めたら、ffmpegで切り出す。

ffmpeg -ss 00:01:30 -to 00:05:00 -i 会議.mp4 -c copy 抜粋.mp4

画面が要るなら、READMEの開発者向け手順どおりpip install PyQt6を足して、GitHubのeditor.pyを動かせばよい。 ソースは1ファイル5,719行で、画面、セットアップ、whisperとffmpegの呼び出しがすべてそこに入っている。 自分用に組み直すときの手本として読める。

このアプリが足している価値は、モデルではなく画面側にある。 文字起こし結果から残す区間を選んで合計時間を見ながらカットする操作、フィラー語の一括除外、字幕の焼き込み、沈黙の記録、CSVとEAFの書き出し、編集済み字幕の自動退避は、whisperコマンドとffmpegを素で使うと自分で用意することになる。 モデルとffmpegは誰でも同じものを使えるので、差が出るのはこの部分である。

使いどころと気をつける点

守秘が要る音声に向いている。 顧問先との打ち合わせの録音や、外部に出せないインタビューを、手元だけで逐語録にできる。 クラウドの文字起こしサービスに送ってよい音声かどうかを、案件ごとに判断しなくて済む。

一方で、次の点は承知のうえで使うことになる。

  • WindowsはCPU処理なので、1時間の会議なら3〜10時間かかる計算になる。夜に回すか、モデルをsmallに落として下読みに使う運用になる
  • 署名がないのでSmartScreenの警告が出る。ソースが全公開なので中身は確かめられる
  • 作者自身が「研究・教育用途向けの試作ソフトウェアです。動作を保証するものではなく」と免責している
  • GitHubのStarは5、Windows版の累計ダウンロードは234件(2026年9月10日時点)で、利用者はまだ少ない

無料でMIT、ソース公開、外部送信なしという条件がそろったツールは、サービス終了で使えなくなる心配がない。 中身が分かれば、作者の手が止まっても自分で直せる。 それがこのツールを手元に置く理由である。

参考リンク

Footnotes

  1. 配布サイトの機能紹介とFAQによる。2026年9月10日閲覧。
  2. READMEの「動作環境」「Whisperモデルについて」「基本的な使い方」の各節による。2026年9月10日閲覧。
  3. リポジトリの.github/workflows/build.ymlによる。Windows版はwindows-latestランナー上でPyInstallerを--collect-all PyQt6つきで実行し、dist\EasyTranscribeをZIPに固めている。
  4. リポジトリのeditor.py(mainブランチ、2026年9月10日取得時点で5,719行)による。セットアップ処理、whisperコマンドの組み立て、ffmpegの探索がここに入っている。
  5. openai/whisperのwhisper/transcribe.pyで、--deviceの既定値は"cuda" if torch.cuda.is_available() else "cpu"と定義されている。
  6. PyPIのopenai-whisperは2026年9月10日時点で20250625版、ライセンスはMIT。
#文字起こし#Whisper#ffmpeg#Python#ローカルAI#動画編集