如何从MFCC序列制作.wav文件

问题描述 投票:0回答:2

我想知道如何从 MFCC 序列制作 .wav 文件。

a,sr = librosa.load(filename)# filename is *.wav
y = librosa.feature.mfcc(y=ar,sr=sr)#sr is 22050

我想对上面的代码进行相反的操作。
我尝试使用“librosa.feature.inverse.mel_to_audio”

M=librosa.feature.inverse.mel_to_audio(y,sr=22050,n_fft=2048)
sr.write('out.wav',M,22050,'PCM_24')

我运行了上面的代码,但无法恢复音频。
是论证错误,还是方法使用错误?
我需要知道该怎么做。

python audio deep-learning librosa mfcc
2个回答
0
投票

将声音文件导入为 sf

输出 = '/kaggle/working/output.wav'
sf.write(输出,y_reconstructed,sr)


0
投票

您需要使用其他方法从 mfcc 恢复音频并使用 sr = None 以便采样率来自您的音频而不是默认值 = 22050

import soundfile as sf
a,sr = librosa.load('0.wav', sr=None)
y = librosa.feature.mfcc(y=a,sr=sr)

M=librosa.feature.inverse.mfcc_to_audio(y,sr=sr, n_fft=2048)
sf.write('out.wav',M,22050,'PCM_24')
© www.soinside.com 2019 - 2024. All rights reserved.