Categories
技術メモ

【完全ガイド】MacでWhisper.cppを使って音声ファイルを高速文字起こしする方法

この記事では、AppleシリコンMac(M1/M2/M3)で whisper.cpp を使って、Metal対応GPUを活用し、音声ファイルを高速に文字起こしするための手順をわかりやすく解説します。


🔧 対象環境と前提条件

  • macOS(初期状態でOK)
  • Appleシリコン搭載(M1 / M2 / M3)
  • 音声ファイル:sample.m4a
  • ターミナル操作が可能

✅ 1. Homebrewをインストール(未導入の場合)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew --version

✅ 2. 必要なツールをインストール

whisper.cppのビルドや音声ファイルの変換に必要なツールをHomebrewでインストールします。

brew install cmake ffmpeg git

✅ 3. whisper.cpp をクローン(最新版を取得)

cd ~
git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp

✅ 4. Metal対応でビルド(Apple GPU活用)

cmake -B build -DWHISPER_METAL=ON
cmake --build build --config Release

ビルド後、./build/bin/whisper-cli が実行ファイルになります。

✅ 5. モデルファイル(small)をダウンロード

Whisperモデルは精度と速度のバランスが取れたggml-small.binを使用します。

mkdir -p models
curl -L -o models/ggml-small.bin https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-small.bin

✅ 6. 音声ファイルを WAV形式に変換(ffmpeg使用)

Whisperは.wav形式の入力に最適化されています。

ffmpeg -i sample.m4a -ar 16000 -ac 1 -c:a pcm_s16le sample.wav

✅ 7. Whisperで音声を文字起こし(日本語指定)

./build/bin/whisper-cli -m models/ggml-small.bin -f sample.wav -t 8 -l ja --output-txt --output-srt --output-vtt

出力ファイル:

  • sample.wav.txt:文字起こし結果(テキスト)
  • sample.wav.srt:字幕ファイル(動画編集用)
  • sample.wav.vtt:Web字幕ファイル(HTML5用)

💡 文字起こしが完了したら

ls -lh sample.wav.*

🚀 より高度な使い方・応用

  • 日本語から英語へ翻訳: --translate --language ja
  • より高速処理: モデルを ggml-base.bin に変更
  • 音声が長い: ffmpeg で分割して処理可能

🧪 一括処理コマンド(WAV変換+Whisper文字起こし)

ffmpeg -i sample.m4a -ar 16000 -ac 1 -c:a pcm_s16le sample.wav && \
./build/bin/whisper-cli -m models/ggml-small.bin -f sample.wav -t 8 -l ja --output-txt --output-srt --output-vtt

📎 まとめ:Whisper.cpp をMacで活用して業務効率化

この手順に従えば、macOS環境でwhisper.cppをMetal対応で高速に動作させ、音声ファイルから簡単に文字起こしを行えます。

プログラマー、研究者、ポッドキャスター、ライターなど、あらゆる音声を文字情報に変換したい人におすすめです。

Leave a Reply

Your email address will not be published. Required fields are marked *