当前位置:   article > 正文

python音频转数组_尝试将mp3文件转换为Numpy数组,ffmpeg就挂起了

语音文件filestorage转化为ndarray

我正在使用scikitlearn开发音乐分类方法,该过程的第一步是将音乐文件转换为numpy数组。在

在尝试从python脚本调用ffmpeg失败后,我决定直接通过管道将文件导入:FFMPEG_BIN = "ffmpeg"

cwd = (os.getcwd())

dcwd = (cwd + "/temp")

if not os.path.exists(dcwd): os.makedirs(dcwd)

folder_path = sys.argv[1]

f = open("test.txt","a")

for f in glob.glob(os.path.join(folder_path, "*.mp3")):

ff = f.replace("./", "/")

print("Name: " + ff)

aa = (cwd + ff)

command = [ FFMPEG_BIN,

'-i', aa,

'-f', 's16le',

'-acodec', 'pcm_s16le',

'-ar', '22000', # ouput will have 44100 Hz

'-ac', '1', # stereo (set to '1' for mono)

'-']

pipe = sp.Popen(command, stdout=sp.PIPE, bufsize=10**8)

raw_audio = pipe.proc.stdout.read(88200*4)

audio_array = numpy.fromstring(raw_audio, dtype="int16")

print (str(audio_array))

f.write(audio_array + "\n")

问题是,当我运行该文件时,它会启动ffmpeg,然后什么也不做:

^{pr2}$

它只是坐在那里,挂着,比歌的时间长得多。我做错什么了?你说

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/106371
推荐阅读
相关标签
  

闽ICP备14008679号