こんにちは、ごりらです🦍
今回はOpenAIのWhisperを使って音声のテキスト化をしてみます。すごくざっくりですが、お手軽に技術の進歩が感じられました。
GithubのREADMEを見ながら進めていきます。
セットアップ
バージョン確認
まずはPythonのバージョンは3.8-3.11とあるので確認します。
the codebase is expected to be compatible with Python 3.8-3.11 and recent PyTorch versions.
$ python -V
Python 3.10.6
バージョンは3.10なのでインストールに進みます。
インストール
リポジトリから落とすと最新のコミットで依存関係もやってくれるのでpipではなく、リポジトリからインストールします。
Alternatively, the following command will pull and install the latest commit from this repository, along with its Python dependencies:
$ pip install git+https://github.com/openai/whisper.git
ffmpegをインストール
加えてffmpegも必要なのでインストールします。
It also requires the command-line tool ffmpeg to be installed on your system, which is available from most package managers:
sudo apt update && sudo apt install ffmpeg
Pythonで実行
READMEのコードをコピーして実行!(ファイル名は良しなに変更)
Transcription can also be performed within Python:
import whisper
model = whisper.load_model("base")
result = model.transcribe("audio.mp3")
print(result["text"])
実行結果
音声ファイルは 「話速バリエーション型音声データベース(SRV-DB)」から「編集手帳(読売新聞)の読み上げ」を利用しました。 以下の左が原稿で、右がWhisperの出力です。
原稿
そう多くの人の目に触れる冊子ではないが、小社広告局が発行する 「オッホ」の今月号で、映画監督の大林宜彦さんがクイズを出している。 「一時間半の映画でスクリーンに絵が映っている時間は何分か」
正解は五十分だそうだ。映写機は一秒間に二十四回まばたきするが、 シャッターが閉じてフィルムが入れ替わるのに九分の四秒かかる。 一時間半のうち四十分間、観客は闇を見ているのだという。
この闇を大林さんは、文章に例えて”行間”と表現し、観客に 行間を読ませるのが演出だと述べている。九分の五の映像が物事の 「記録」だとすれば、九分の四の闇はその記録を心の内に投影する 「記憶」の時間である、とも。
人も情報も高速で動く今、記録と記憶のバランスはどうだろう。目的地 での見聞、ネットや携帯電話の情報が大量に記録される一方、それを ゆっくり味わう記憶の時間が失われつつあるようにも感じられる。
ファストフード全盛の中、食事に時間をかける「スローフード」が 関心を集めているのは、その反動でもあるのだろう。時間をかけて走る 寝台特急が人気の理由も同じに違いない。
夏休みは「ゆっくり」を楽しむいい機会だが、今年は台風に邪魔された。 時速二十キロほど、自転車並の縦断が被害を大きくした。こちらのユックリズムは ありがたくない。
Whisperの出力
総多くの人の目に触れる差しではないが、少者広告局が発行する おほの今月後で、映画監督の大林の武器子さんがクイズを出している。 1時間半の映画でスクリーンに映画映っている時間は何分か。
正解は50分だそうだ。映射器は1秒間に24回まばたきするが、 シャッターが閉じてフィルムが入れ変わるのに9分の4秒かかる。 1時間半のうち40分間観客は闇を見ているのだという。
この闇をオーバイアシさんは文章に立てて、業管と表現し、観客に 業管を読ませるのが演出だと述べている。9分の後の映像が物語の 記録だとすれば、9分の4の闇はその記録を心のうちに投影する 記録の時間であると思う。
人も情報も高速で動く今、 記録と記録のバランスはどうだろう。 目的地 での県分、ネットや携帯電話の情報が大量に記録される一方、それを ゆっくり味わう記録の時間が失われつつあるようにも感じられる。
ファストフード前世の中、 食事に時間をかけるスローフードが 関心を集めているのはその反動でもあるのだろう。時間をかけて走る 信頼特急が人気の理由も同じに違いない。
夏休みはゆっくりお楽しむいい機会だが今年は大風に邪魔された。 時速20キロほど、自転車の身の充断が被害を大きくした。 こちらのゆっくりズムは ありがたくない。
※ 見やすさのため、後から改行を追加しました。
固有名詞や漢字が間違っていたりしますが、大枠あっていますね!すごい!
以上、Whisperで音声のテキスト化を試してみる!でした。
CUDA周りのエラーが出る場合
記事では省きましたが、ただ試したいだけの場合はPyTorchをCPUで動かすと手っ取り早いかもしれません。
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
PyTorchのサイトから以下の画像のような選択をすると上記のコマンドを取得できます。