將音訊轉成正確格式
Acme Studios 要求你做一個概念驗證,來更了解他們的音訊檔案。
簡單探索後,你發現有幾通來電,但它們的檔案格式不適合拿來轉錄。
因為你會和許多音訊檔互動,你決定先建立一些輔助函式。
第一個函式 convert_to_wav(filename) 接收檔案路徑,並使用 PyDub 將非 wav 格式轉成 .wav 格式。
完成後,我們會用這個函式把 Acme 的第一通來電,call_1.mp3,從 .mp3 格式轉成 .wav。
PyDub 的 AudioSegment 類別已經匯入。記得,若要處理非 wav 檔案,你需要 ffmpeg(docs)。
本練習屬於課程
Python 的口語語言處理
練習說明
- 使用
AudioSegment的from_file()匯入filename參數。 - 將匯出格式設為
"wav"。 - 將目標音訊檔
call_1.mp3傳入該函式。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Create function to convert audio file to wav
def convert_to_wav(filename):
"""Takes an audio file of non .wav format and converts to .wav"""
# Import audio file
audio = AudioSegment.____(filename)
# Create new filename
new_filename = filename.split(".")[0] + ".wav"
# Export file as .wav
audio.export(new_filename, format=____)
print(f"Converting {filename} to {new_filename}...")
# Test the function
convert_to_wav(____)