我正在尝试使用librosa从持续时间为60秒的.wav文件中剪辑1秒的片段以生成一些数据。
这部分工作已经完成,我创建了所有文件并且可以通过任何播放器听取它们,但是如果我尝试使用librosa.load打开它们,就会收到以下错误:
>>> librosa.load('.\\train\\audio\\silence\\0doing_the_dishes.wav', sr=None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\gionata\AppData\Local\Programs\Python\Python36\lib\site\packages\librosa\core\audio.py", line 107, in load
with audioread.audio_open(os.path.realpath(path)) as input_file: File "C:\Users\gionata\AppData\Local\Programs\Python\Python36\lib\site-packages\audioread\__init__.py", line 116, in audio_open
raise NoBackendError()
audioread.NoBackendError
您有什么建议吗?我使用以下函数创建file.wav文件:
def create_silence():
path=DB+"_background_noise_/"
sounds = [x[len(DB):] for x in glob.glob(path+ '*.wav')]
for elem in enumerate(sounds):
sound=elem.split('\\')[1]
print(sound)
for j,i in enumerate(np.arange(0.0, 59.0, 0.3)):
y, sr=librosa.load(DB+elem, sr=None, offset=i, duration=1.0)
librosa.output.write_wav(DB+'silence/'+str(j)+sound, y, sr=sr, norm=False)
这个问题只出现在由librosa创建的文件中,librosa.load在处理其他文件时没有任何问题。