首页 > 解决方案 > 在 Python 中将 MP3 音频文件转换为 Numpy 数组

问题描述

我尝试了很多方法来打开音频文件并将其转换为 numpy 数组,但没有任何效果。

import numpy as np
import pyglet

song = pyglet.media.load('sample-000000.mp3')
np.array(song)

我想要一个数字数组,而不是包含 pyglet 文件的数组。

Out[1]: 
array(<pyglet.media.codecs.wmf.WMFSource object at 0x00000222A8118808>,
      dtype=object)

感谢帮助。

标签: pythonpython-3.xnumpymp3

解决方案


使用 pydub

import pydub
import numpy as np
a = pydub.AudioSegment.from_mp3("file.mp3")
arry = np.array(a.get_array_of_samples())
print(arry)

推荐阅读