Cargar datos WAV
Para trabajar con cualquier dato no estándar usando Dask bags, tendrás que escribir muchas funciones por tu cuenta. En esta tarea, vas a analizar datos de audio, así que necesitas una función personalizada para cargarlos.
Algunas de las grabaciones fallaron y el audio está en silencio. Un audio normal se ve como una onda, donde la amplitud alcanza valores positivos y negativos grandes. Por lo tanto, para comprobar si una grabación está en silencio, puedes verificar si el clip de audio tiene amplitudes muy pequeñas en general.
El módulo scipy.io.wavfile se ha importado en tu entorno como wavfile, y numpy se ha importado como np.
Este ejercicio forma parte del curso
Programación paralela con Dask en Python
Instrucciones del ejercicio
- Dentro de la función
load_wav(), usawavfile.read()para cargar los datos de audio y la frecuencia de muestreo. - Dentro de
load_wav(), construye el diccionario que se va a devolver. - Dentro de la función
not_silent(), devuelve un booleano que indique si el array'audio'dentro del diccionario de entrada tiene un valor absoluto medio mayor que 100, usando las funcionesabs()ymean()denumpy.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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 ____