Python:将 Torch 张量转换为字节并保存为 wav 文件

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

我有一个 torch.tensor 格式的音频文件数据。我想将其转换为字节,然后需要将文件保存为“.wav”格式。 (我不想将文件直接从张量保存到“.wav”)

我使用以下方法将张量转换为字节,然后将其保存为wav。

audio_data_bytes = io.BytesIO()
torch.save(audio_data, audio_data_bytes)
audio_data_bytes.seek(0) 
res=audio_data_bytes.read()
open("abc.wav", 'wb').write(res)

看起来,它正确保存了 wav 文件,但是当我使用 soxi 检查其属性时,我面临以下问题

soxi FAIL formats: can't open input file `abc.wav': WAVE: RIFF header not found

想知道,我该如何解决这个问题。

谢谢

python-3.x pytorch tensor torch
1个回答
1
投票

torch.save
pickles 文件,这是 Python 独有的格式。 请使用
torchaudio.save
来代替。

© www.soinside.com 2019 - 2024. All rights reserved.