Încărcarea datelor wav
Pentru a lucra cu date non-standard folosind Dask bags, va trebui să scrii multe funcții personalizate. În această sarcină, analizezi date audio, deci ai nevoie de o funcție proprie pentru a le încărca.
Unele înregistrări audio au eșuat, astfel că acestea sunt silențioase. Datele audio normale arată ca un val, unde amplitudinea atinge valori mari pozitive și negative. Prin urmare, pentru a verifica dacă o înregistrare este silențioasă, poți verifica dacă clipul audio are amplitudini foarte mici în general.
Modulul scipy.io.wavfile a fost importat în mediul tău ca wavfile, iar numpy a fost importat ca np.
Acest exercițiu face parte din cursul
Programare paralelă cu Dask în Python
Instrucțiuni pentru exercițiu
- În interiorul funcției
load_wav(), foloseștewavfile.read()pentru a încărca datele audio și frecvența de eșantionare. - În interiorul funcției
load_wav(), construiește dicționarul returnat. - În interiorul funcției
not_silent(), returnează un boolean care să indice dacă array-ul'audio'din dicționarul de intrare are o medie a valorii absolute mai mare decât 100, folosind funcțiileabs()șimean()dinnumpy.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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 ____