Carregando dados WAV
Para trabalhar com qualquer dado fora do padrão usando Dask bags, você vai precisar escrever muitas funções por conta própria. Nesta tarefa, você está analisando dados de áudio e, portanto, precisa de uma função personalizada para carregá-los.
Algumas das gravações de áudio falharam e ficaram silenciosas. Dados de áudio normais se parecem com uma onda, em que a amplitude vai a valores positivos e negativos grandes. Assim, para verificar se uma gravação está silenciosa, você pode checar se o clipe de áudio tem amplitudes muito pequenas no geral.
O módulo scipy.io.wavfile foi importado no seu ambiente como wavfile, e numpy foi importado como np.
Este exercício faz parte do curso
Programação Paralela com Dask em Python
Instruções do exercício
- Dentro da função
load_wav(), usewavfile.read()para carregar os dados de áudio e a frequência de amostragem. - Dentro de
load_wav(), construa o dicionário de retorno. - Dentro da função
not_silent(), retorne um booleano indicando se o array'audio'dentro do dicionário de entrada tem valor absoluto médio maior que 100, usando as funçõesabs()emean()donumpy.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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 ____