นำเข้าไฟล์เสียงด้วย Python
เราได้เห็นแล้วว่าไฟล์เสียงมีหลายรูปแบบ และเพลงสตรีมมิ่งกับภาษาพูดมีอัตราการสุ่มตัวอย่าง (sampling rate) ที่แตกต่างกัน ทีนี้ถึงเวลาเริ่มทำงานกับไฟล์เหล่านี้จริง ๆ แล้ว
เราจะเริ่มด้วยการนำเข้าไฟล์เสียง good_morning.wav โดยใช้ไลบรารี wave ที่มีมาพร้อมกับ Python จากนั้นดูว่าข้อมูลในรูปแบบไบต์หน้าตาเป็นอย่างไร ผ่านเมธอด readframes()
ฟังไฟล์ good_morning.wav ได้ ที่นี่
จำไว้ว่า good_morning.wav มีความยาวเพียงไม่กี่วินาที แต่ที่อัตรา 48 kHz ไฟล์นี้บรรจุข้อมูลถึง 48,000 ชิ้นต่อวินาที
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Spoken Language Processing ด้วย Python
คำแนะนำการฝึกหัด
- นำเข้าไลบรารี
waveของ Python - อ่านไฟล์เสียง
good_morning.wavและบันทึกลงในตัวแปรgood_morning - สร้าง
signal_gmโดยอ่านเฟรมทั้งหมดจากgood_morningด้วยreadframes() - ดูว่า 10 เฟรมแรกของไฟล์เสียงมีหน้าตาอย่างไร โดยใช้การ slicing กับ
signal_gm
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
import ____
# Create audio file wave object
good_morning = wave.open(____, 'r')
# Read all frames from wave object
____ = good_morning.readframes(-1)
# View first 10
print(signal_gm[:____])