实际案例:
- wav是一种音频文件的格式,音频文件为二进制文件.
- wav文件由头部信息和音频采样数据构成.前44个字节为头部信息,包含声道数、采样频率,PCM位宽等等,后面是音频采样数据.
- 使用python,分析一个wav文件头部信息,处理音频数据.
f = open('demo.wav','rb')
info = f.read(44)
import struct
struct.unpack('h','\x01')
struct.unpack('h',info[22:24])
import array
f.seek(0,2)
n = (f.tell() - 44) / 2
buf = array.array('h',(0 for _ in range(n))
f.seek(44)
f.readinto(buf)
for i in range(n):buf[i] /= 8
f2 = open('demo2.wav','wb')
f2.write(info)
buf.tofile(f2)
f2.close()
网友评论