wav 文件,原来存放音频的原始数据,即对 PCM 文件进行简单封装,在文件开头加上标识,并提供音频的声道数、采样频率和采样位数等信息,这样播放器解析这些数据就可以正常播放这段音频了。
wav 文件一般由3个区块组成:RIFF chunk、Format chunk 和 Data chunk。
RIFF chunk:主要说明本文件保存的是什么内容。
Formt chunk:主要说明音频文件的格式
Data chunk:主要记录音频的数据
本处介绍的 wav 数据,默认内部存储的是 pcm数据,但是如何解析这个 pcm 数据呢?虽然前面格式里面保存了,每个采样的字节数,但是没有写是大端还是小端;数据是整数还是浮点;planar和packed?
大端符合人阅读常识。比如 1234,其中 1是数据的高位,4是数据的低位。如果用大端存储,则存在内存中为 1234;如果用小端存储,则存在内存中为 4321。
52 49 46 46 / f4 b1 37 00 / 57 41 56 45
ASCII 码表中
Size = 0x0037b1f4 (3,650,036)
文件大小 fileSize 为
两者刚好相差 8。
66 6d 74 20 / 10 00 00 00 / 01 00 / 02 00/ 22 56 00 00/ 88 58 01 00/ 04 00/ 10 00
size = 0x10 (16)
audioformat = 0x01 表示 PCM
numchannels = 0x02 表示双通道
samplerate = 0x5622 (22050)
byterate = 0x015888 (88200) = 22050216/8
blockalign = 0x04 = 2*16/8
bitspersample = 0x10 (16bits)
64 61 74 61 / d0 b1 37 00
size = 0x37b1d0 (3650000)
3650000 + 12 + 24 + 8 = 3650044 (文件大小)
https://www.jianshu.com/p/947528f3dff8
https://download.csdn.net/download/dss875914213/75111021
音频来源网络 如有侵权请联系删除。
没有积分的人,也可主动联系我。
因篇幅问题不能全部显示,请点此查看更多更全内容