我需要从 'D:\Study\Progs\test\samples' 中获取文件,并在处理存储在 'D:\Study\Progs\test"input value"' 之后,但在 "name = os.path.abspath" 行之后(文件)”程序采用错误路径“D:\Study\Progs\test\file.wav”而不是“D:\Study\Progs\test\samples\file.wav”,可能是什么原因?
import librosa.display
import matplotlib.pyplot as plt
import os
pa = "./"
save = pa+input()
os.mkdir(save)
for file in os.listdir("./samples"):
if file.endswith(".wav"):
print(file)
name = os.path.abspath(file)
ss = os.path.splitext(name)[0]+".png"
print(name)
audio = name
x, sr = librosa.load(audio, mono=True, duration=5)
save_path = os.path.join(save, ss)
X = librosa.stft(x)
Xdb = librosa.amplitude_to_db(abs(X))
plt.figure(figsize=(20, 10))
librosa.display.specshow(Xdb, sr=sr)
plt.savefig(save_path)
在谷歌上找到所有选项之后,我想出了以下工作版本......