如何在python中的for循环中编写音频文件



我必须编写一个echo代码。所以我写了这个代码。我想知道如何将这些添加到一个单独的wav文件中。有人能给我一个答案吗。提前谢谢。

import sounddevice as sd
from scipy.io import wavfile
import numpy as np
from scipy.io.wavfile import write
fs,x=wavfile.read('hello.wav')
amp=1
for i in range (2,6):
nx=(amp/i**3)*x
sd.play(nx,fs)
sd.wait()
write('hello[i]',fs,myrecording)        

这里需要做两件事:

  1. myrecording(未在代码片段中定义(替换为要写入文件的声音数据数组。对你的代码的检查让我觉得你想写的实际上是nx

  2. 每个写出的文件都需要一个不同的文件名,否则你只需要重写同一个文件,只剩下最后一个写出的文件名。有很多方法可以为这个文件名生成/构造字符串,但根据您的经验,我使用了一种方法,它会将文件标记为";hello_2.wav";等

我已经将这两件事集成到这里的代码中:

import sounddevice as sd
from scipy.io import wavfile
from scipy.io.wavfile import write
fs, x = wavfile.read('hello.wav')
AMP = 1
for i in range(2, 6):
nx = (AMP/i**3) * x
sd.play(nx, fs)
sd.wait()
filename = f'hello_{i}.wav'
write(filename, fs, nx)

相关内容

  • 没有找到相关文章

最新更新