Python:如何快速加载大型音频数据集

时间:2019-07-01 01:41:38

标签: python audio wav m4a

我是处理大量数据的新手。我有一个相当大的数据集(每两秒钟大约100万个音频文件),并且我正试图以一种有效的方式加载数据以实现可视化目的(并最终用作神经网络中的训练数据)。

到目前为止,我一直在尝试使用librosa(使用librosa.load(filename)),但这仅花费了几个小时就加载了10,000个文件。我试图找出是否可以使用GPU来加速它(与Numba混为一谈),但是我不清楚这是否是GPU要解决的有效问题。

我觉得我确实缺少一些明显的东西。有经验的人可以告诉我该怎么做吗?我很难在Internet上找到解决方案。感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以使用pygame。 在我制作的这个迷你程序中,我测试了加载大约10秒长的声音文件需要花费多长时间:

import pygame
import time

pygame.init()
time_now = time.time()
sound = pygame.mixer.music.load('music.wav')
print(time.time() - time_now)

结果是:

0.0

如果要播放该文件,请执行以下操作:

pygame.mixer.music.play(loops=int, start=float)

大约需要1-4小时才能全部加载它们。 有关更多信息,请转到https://www.pygame.org/docs/ref/music.html