开始使用免费开始使用

加载 wav 数据

要在 Dask bag 中处理任何非标准数据,您通常需要自己编写不少函数。本任务中,您要分析音频数据,因此需要一个自定义函数来加载音频。

有些录音失败了,结果是静音。正常的音频数据看起来像波形,振幅会在较大的正值和负值之间变化。因此,若要判断录音是否为静音,可以检查音频片段的整体振幅是否非常小。

scipy.io.wavfile 模块已作为 wavfile 导入到您的环境中,numpy 已作为 np 导入。

本练习是课程的一部分

Python 中的 Dask 并行编程

查看课程

练习说明

  • load_wav() 函数中,使用 wavfile.read() 加载音频数据和采样频率。
  • load_wav() 中,构造返回的字典。
  • not_silent() 函数中,返回一个布尔值:输入字典中 'audio' 数组的平均绝对值是否大于 100,可使用 numpyabs()mean() 函数实现。

交互式实操练习

通过完成这段示例代码来试试这个练习。

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 ____
编辑并运行代码