从帧数组创建波形文件

时间:2019-03-07 23:25:03

标签: python-2.x wave

我正在一个小项目中,记录一个 .wav 文件,然后在Python中使用 wave 读取其框架。
因此,我尝试实现的是获取帧的数组/列表,将每个帧乘以2,然后创建一个新的 .wav 文件或更改实际的文件。
因此,在线阅读Wave文件并使用 .readframes()获取帧的网上有很多不错的帖子,我得到的是 ndarray 。我使用以下代码行获取每一帧:

(struct.unpack("<h",frame[i]))[0]

问题是,一旦我获得列表中的数据并将其相乘..是否可以创建一个新的wave文件或直接将其值更新为实际值?

要读取文件的代码:

filename="/path/to/file/file.wav"

rfile = wave.open(filename, 'r')
framesTmp= rfile.readframes(-1)
frames= np.fromstring(signalTmp, 'Int16')
#get list of frames
data=[]
for i in range(0,len(signal)-1):
        data.append((struct.unpack("<h",signal[i]))[0]*2)

rfile.close()

0 个答案:

没有答案