Byte ke bilangan bulat
Anda telah melihat cara mengimpor dan membaca berkas audio menggunakan modul wave di Python dan metode readframes(). Namun, hasilnya berupa array byte.
Untuk mengonversi byte menjadi sesuatu yang lebih berguna, kita akan menggunakan metode frombuffer() dari NumPy.
Dengan memberikan byte gelombang suara ke frombuffer() dan menentukan dtype 'int16', kita dapat mengonversi byte menjadi bilangan bulat. Bilangan bulat jauh lebih mudah digunakan daripada byte.
Pustaka wave di Python telah diimpor bersama dengan berkas audio good_morning.wav.
Latihan ini adalah bagian dari kursus
Pemrosesan Bahasa Lisan dengan Python
Petunjuk latihan
- Impor paket
numpydengan alias umumnya,np. - Buka dan baca berkas audio good morning.
- Konversi byte
signal_gmmenjadi bilangan bulatint16. - Lihat 10 nilai pertama gelombang suara.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
import ____ as ____
# Open good morning sound wave and read frames as bytes
good_morning = wave.open(____, 'r')
signal_gm = good_morning.readframes(-1)
# Convert good morning audio bytes to integers
soundwave_gm = np.frombuffer(____, dtype=_____)
# View the first 10 sound wave values
print(soundwave_gm[:____])