查詢 PyDub 統計資訊
你認為能夠輕鬆取得任一音訊檔的屬性會很有幫助。特別是要確認音訊檔有多少聲道,或採樣率(frame rate)是否足以進行轉錄時,這點更重要。
在本練習中,我們會建立 show_pydub_stats(),它接收音訊檔的檔名作為輸入。接著把音訊匯入為 PyDub 的 AudioSegment 物件,並列印出聲道數、長度等屬性。
最後它會回傳該 AudioSegment 物件,讓你之後可以重複使用。
我們會將此函式用在[新轉換的 .wav 檔](https://assets.datacamp.com/production/repositories/4637/datasets/43c5aff8c419d07f8cef70fdf40e4657b78b70be/ex4call1stereoformatted.wav),也就是 call_1.wav。
AudioSegment 已經從 PyDub 匯入。
本練習屬於課程
Python 的口語語言處理
練習說明
- 以匯入參數
filename的方式,建立名為audio_segment的AudioSegment物件。 - 使用
channels屬性列印聲道數。 - 回傳變數
audio_segment。 - 用
"call_1.wav"測試此函式。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
def show_pydub_stats(filename):
"""Returns different audio attributes related to an audio file."""
# Create AudioSegment instance
____ = AudioSegment.from_file(____)
# Print audio attributes and return AudioSegment instance
print(f"Channels: {audio_segment.____}")
print(f"Sample width: {audio_segment.sample_width}")
print(f"Frame rate (sample rate): {audio_segment.frame_rate}")
print(f"Frame width: {audio_segment.frame_width}")
print(f"Length (ms): {len(audio_segment)}")
return ____
# Try the function
call_1_audio_segment = ____(____)