wav文件解析

本文将解析wav音频文件格式,并实现一套用于读写wav文件的API


wav文件解析

wav文件简介

wav/wave文件格式是由微软开发的用于音频数字存储的标准,它采用RIFFResource Interchange File Format,资源交换文件标准)文件规范,文件扩展名为.wav,采用小端存储。

wav文件头

wav文件分成两部分:

  • 文件头:主要包含标准的44字节文件头或经过了一些软件处理的58字节文件头,文件头中包含RIFF数据块,一个fmt数据块和一个data数据块
  • 数据块:用于存储数据,数据本身的格式为PCM或压缩型

本文所介绍的wav文件头是标准的44字节文件头。

wav文件格式

wav文件格式如下:
wav_header

通过wav文件头信息,我们可以计算出音频时长:

1
音频时长 = Subchunk2Size/ByteRate

编码类型

wav文件几乎支持所有ACM规范的编码格式,其信息存储在文件头2122两个字节中,有如下编码格式:
audio_code

wav文件读写API

这里提供了一套用于wav文件读写的API,欢迎大家来添砖加瓦。

About me

forthebadge

Creative Commons License This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。