我有一套wav文件,我想生成一个光谱图。但是,当我使用tf.audio.decode_wav函数时,我会得到以下错误:
InvalidArgumentError: WAV的坏音频格式:预期1 (PCM),但got7操作:DecodeWav
如何避免这一错误?有没有其他方法可以使用tensorflow为wav文件生成日志mel谱图?
我知道librosa包,但我更喜欢tensorflow。
守则是:
def decode_audio(audio_binary):
audio, _ = tf.audio.decode_wav(audio_binary)
return tf.squeeze(audio, axis=-1)
def get_waveform_and_label(file_path):
audio_binary = tf.io.read_file(file_path)
waveform = decode_audio(audio_binary)
return waveform发布于 2021-04-30 10:57:12
错误告诉您,您的文件表明它们的样本被编码为8位的mulaw。
正如TensorFlow文档中所描述的那样,这种方法只支持16位PCM。
在将波形文件传递给tensorflow之前,您需要重新编码它们。像ffmpeg这样的东西能帮上忙。
https://stackoverflow.com/questions/67314288
复制相似问题