用一行指令轉錄音訊
很好!現在你已經有把音訊檔轉換格式、並取得其屬性的函式了,接下來要建立一個用來轉錄的函式。
在這個練習中,你會撰寫 transcribe_audio(),它會把 filename 作為輸入,使用 speech_recognition 的 AudioFile 類別匯入該 filename,接著用 recognize_google() 來轉錄。
你先前已經看過這些函式了,不過現在我們會把它們組合在一起,做成一個方便呼叫的函式。
我們會用它來測試並轉錄[Acme 的第一通電話](https://assets.datacamp.com/production/repositories/4637/datasets/43c5aff8c419d07f8cef70fdf40e4657b78b70be/ex4call1stereoformatted.wav),也就是 "call_1.wav"。
speech_recognition 已經以 sr 匯入。
本練習屬於課程
Python 的口語語言處理
練習說明
- 定義一個名為
transcribe_audio的函式,並以filename作為輸入參數。 - 建立
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(____))