「文字起こしができる動画サイズはどれくらいまで?」
「Google Speech Recognitionは1度に何メガまで対応している?」
「何分ぐらいの音声をテキストに変換できる?」
このような疑問がありますか?
もしくは、単純に書き起こしに興味がありますか?
文字起こしに興味があるなら、まずは次の記事をご覧ください。
Pythonで音声からテキストへ変換【SpeechRecognition】
文字起こしやテキスト変換について熟知している方は、このまま読み続けてください。
冒頭の疑問に対して、解決できるヒントを提供できます。
Google Speech Recognition(以下Google無料エンジン)を利用していれば、ズバリの回答を提供します。
Google無料エンジンは、Androidで使われている音声認識エンジンです。
そのため、本記事はGoogle無料エンジンに関する内容となります。
本記事の内容
- 音声認識が可能な最大ファイルサイズは?
- 【実証】安倍内閣総理大臣記者会見(令和2年2月29日)を音声認識してみる
上記の項目に沿って、説明をしていきます。
音声認識が可能な最大ファイルサイズは?
結論から言うと、不明です。
ただ、ある程度の基準は判明しました。
- 再生時間が5分以内
- 変換後のテキスト(スペース含む)の文字数が1387(最大で確認できた)以内
これらを二つを満たすなら、適切に音声認識が行われました。
ただし、変換後のテキストの文字数を事前に認識することは不可能です。
よって、音声認識するファイルの再生時間を5分以内にするべきです。
ただ、早口で話された場合、4分前後で1387文字を超えることもありえます。
このような場合は、余裕をもってかなり安全な方向に倒します。
結果としては、再生時間が3分以内のファイルとします。
以上より、音声認識可能なファイルは再生時間3分以内のものと結論付けます。
このルールを守れば、Google無料エンジンを快適に利用できるでしょう。
【実証】安倍内閣総理大臣記者会見(令和2年2月29日)を音声認識してみる
記者会見ノーカット版(動画+テキスト)
https://www.kantei.go.jp/jp/98_abe/statement/2020/0229kaiken.html
上記の動画は、全部で36分2秒あります。
この動画から、最初の5分間を切り取ります。
ファイル名を「time_300.wav」とします。
同じ内容(厳密にはwavではなく、mp4)をYouTubeにアップロードしています。
検証用のコードは、「Pythonで音声からテキストへ変換【SpeechRecognition】」より。
ファイル名を書き換えるだけですね。
import speech_recognition as sr r = sr.Recognizer() with sr.AudioFile("time_300.wav") as source: audio = r.record(source) text = r.recognize_google(audio, language='ja-JP') print(text)
上記コードを実行します。
安倍首相は、決して滑舌がいい部類ではありません。
それでも、この認識精度です。
まとめ
どうでしょうか?
求めていた回答を得られたでしょうか?
正直、想定外の結果でした。
大抵の場合は、容量で制限がかかります。
この場合は、音声認識する音声ファイルの容量ですね。
しかし、容量の制限ではありませんでした。
もしかしたら、容量も制限にあるのかもしれません。
ただ、再生時間=容量と考えれば、それほど気にすることはないでしょう。
この記事内で得られた結果を、どのように活かしていけばよいでしょうか?
結果とは、1度に音声認識可能なファイルが再生時間3分ということです。
結論は、分割ですね。
実例で示した首相会見の動画は、36分(2秒はカット)でした。
そして、そこから音声だけを抽出します。
さらに、この音声ファイルを3分毎に分割します。
そうすると、合計で12個の音声ファイルが出来上がります。
あとは、Google無料エンジンに12回音声ファイルを音声認識するだけです。
これにより、36分間の動画をテキスト化することが可能となります。
大まかな道筋は見えました。
その道筋とは、YouTube動画を自動でテキスト変換することです。
YouTubeの動画は、早送りでもせいぜい2倍速です。
テキストなら、さらに早く内容を把握できますよね。
これを実現したいと考えています。
【追記】2020年07月29日
YouTube動画を自動でテキストに変換するツールを次の記事で説明しています。
興味のある方はご覧ください。