1行で音声を書き起こす
さて、音声ファイルを変換して属性を取得する関数は準備できました。次は、それらを文字起こしする関数を作りましょう。
この演習では、filename を受け取り、speech_recognition の AudioFile クラスでその filename を読み込み、recognize_google() で文字起こしする transcribe_audio() を作成します。
これらの関数はすでに見てきましたが、今回は関数にまとめて使いやすくします。
試すために、Acme の最初の通話、"call_1.wav" を文字起こしします。
speech_recognition は sr としてインポート済みです。
この演習はコースの一部です
Pythonで学ぶ音声言語処理
演習の手順
- 入力パラメータとして
filenameを受け取るtranscribe_audio関数を定義します。 Recognizer()のインスタンスをrecognizerとして用意します。recognize_google()を使って音声データを文字起こしします。- 対象の通話ファイルを関数に渡して実行します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
____ ____(____):
"""Takes a .wav format audio file and transcribes it to text."""
# Setup a recognizer instance
____ = sr.Recognizer()
# Import the audio file and convert to audio data
audio_file = sr.AudioFile(filename)
with audio_file as source:
audio_data = recognizer.record(source)
# Return the transcribed text
return recognizer.____(audio_data)
# Test the function
print(transcribe_audio(____))