Memuat data wav
Untuk bekerja dengan data non-standar apa pun menggunakan Dask bag, Anda perlu menulis banyak fungsi sendiri. Pada tugas ini, Anda menganalisis data audio, sehingga Anda memerlukan fungsi kustom untuk memuatnya.
Sebagian rekaman audio gagal, dan audio pada rekaman tersebut hening. Data audio normal terlihat seperti gelombang, dengan amplitudo yang dapat bernilai positif dan negatif besar. Oleh karena itu, untuk memeriksa apakah sebuah rekaman hening, Anda dapat memeriksa apakah klip audio memiliki amplitudo yang sangat kecil secara keseluruhan.
Modul scipy.io.wavfile telah diimpor ke lingkungan Anda sebagai wavfile, dan numpy telah diimpor sebagai np.
Latihan ini adalah bagian dari kursus
Pemrograman Paralel dengan Dask di Python
Petunjuk latihan
- Di dalam fungsi
load_wav(), gunakanwavfile.read()untuk memuat data audio dan frekuensi sampling. - Di dalam
load_wav(), susun kamus (dictionary) yang dikembalikan. - Di dalam fungsi
not_silent(), kembalikan nilai boolean apakah array'audio'di dalam kamus masukan memiliki nilai rata-rata absolut lebih dari 100, dengan menggunakan fungsiabs()danmean()darinumpy.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
def load_wav(filename):
# Load in the audio data
sampling_freq, audio = ____
# Add the filename, audio data, and sampling frequency to the dictionary
data_dict = {
'filename': ____,
'audio': ____,
'sample_frequency': ____,
}
return data_dict
def not_silent(data_dict):
# Check if the audio data is silent
return ____