Librosa的重采样不匹配

时间:2019-10-21 08:39:34

标签: python machine-learning audio voice-recognition librosa

我使用Librosa库加载和重新采样音频文件列表。 我的代码-

for folder in os.listdir(dir):
    print(os.path.join(dir, folder))
    for file in os.listdir(os.path.join(dir, folder)):
        if file.endswith("wav"):
            labels.append(str(folder))
            data, sampling_rate = librosa.load(os.path.join(dir, folder, file))
            samples = librosa.core.resample(data, sampling_rate, 15000)
            audio.append(samples)

    else:
        continue

加载音频时的sample_rate默认为22050。

将所有这些音频输入机器学习时,它会引发“ ValueError:使用序列设置数组元素”。然后,我发现某些音频文件的大小不同。大部分音频文件的大小为450200。但其他文件的大小为455565。

所有音频的持续时间相同。

但是,对所有音频重新采样时,数据大小并不相同。为什么会发生...

任何建议以相同大小的数据制作所有音频文件,以确保机器学习模型成功运行...

编辑:

使用此功能-

librosa.util.fix_length(y, 450200, mode='edge')

使音频仅从大小为455565的音频中删除最后5365个值。但是我认为5365个值已完全用于机器学习。我已经对音频进行了下采样。<​​/ p>

0 个答案:

没有答案