gpt4 book ai didi

python - 在Python中使用wave连接wav文件

转载 作者:太空宇宙 更新时间:2023-11-03 17:08:55 24 4
gpt4 key购买 nike

我正在尝试将 wav 文件列表连接成一个连续的 wav 文件。我使用了以下代码片段,但输出不正确,听起来几乎就像文件彼此重叠。 audio_files 是一个包含按预期播放的 .wav 文件名的列表。

这是我当前的代码:

outfile = "sounds.wav"

data= []
for wav_file in audio_files:
w = wave.open(wav_file, 'rb')
data.append( [w.getparams(), w.readframes(w.getnframes())] )
w.close()
output = wave.open(outfile, 'wb')
output.setparams(data[0][0])
output.writeframes(data[0][1])
output.writeframes(data[1][1])
output.close()

最佳答案

我假设您正在使用 this question作为你的引用。但是,您所采用的代码仅考虑 2 个 wav 文件,因为这就是原始问题所要求的。

虽然我不知道这是否可以解决声音相互重叠的问题,但您应该迭代 data 列表中的每个项目。

output = wave.open(outfile, 'wb')
output.setparams(data[0][0])
for params,frames in data:
output.writeframes(frames)
output.close()

确保您放入每个文件中的帧。

需要记住的一件事是,新 wav 文件的参数可能特定于每个文件,您可能需要检查 getparams()为每个文件返回相似的结果。

关于python - 在Python中使用wave连接wav文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34322952/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com