pythonで音声からの文字起こしを実装する
本稿では,音声データからテキストに変換する文字起こしを実装します.
有料枠設定にしていますが,下記のサイトで他の記事もみれます.youtubeの投げ銭的な物として,お考えください.
事前準備
ここではSpeechRecognitionというモジュールを用いります.googleのAPIを間接的に利用します.
Speech-to-Text 公式API(opens new window)
pip install SpeechRecognition
# Successfully installed SpeechRecognition-3.8.1
音声のファイル変換
サンプルコードでは読み込む拡張子が「.wav」となっているため,mp3 -> wavに変換します.
ファイル変換はターミナル上でffmpegで実行します.
# ffmpegのインストール
apt-get install -y ffmpeg
# ファイルの変換
ffmpeg -i aps-smp.mp3 aps-smp.wav
音声のテキスト変換
以下のコードで音声からテキストに変換する文字起こしに実施します.
# 音声のテキスト変換
import speech_recognition as sr
r = sr.Recognizer()
with sr.AudioFile("aps-smp.wav") as source:
audio = r.record(source)
text = r.recognize_google(audio, language='ja-JP')
print(text)
今後のやりたいこと
短い音声ファイルではありますが,音声からの文字起こしはできました.
今後は長い動画での文字起こし(できるだけ無料で)に実装したいです.
参考サイト
https://www.hamlet-engineer.com/posts/mojiokoshi.html
エラーコード
#エラーコード1
あまりに時間の長い音声ファイル(無料枠から外れる)を変換したり,言語として読み取れなかったりすると,以下のエラーが発生します.
recognize_google speech recognition broken pipe python(opens new window)
RequestError: recognition connection failed: [Errno 32] Broken pipe
ここから先は
0字
¥ 100
この記事が気に入ったらサポートをしてみませんか?