【音频处理】WAV 文件格式分析 ( 逐个字节解析文件头 | 相关字段的计算公式 )

举报
韩曙亮 发表于 2022/01/10 23:44:17 2022/01/10
【摘要】 文章目录 一、WAV 文件格式 一、WAV 文件格式 这是纯 PCM 样本的二进制内容 : 开始的部分都是 ...

文章目录





一、WAV 文件格式



在这里插入图片描述

这是纯 PCM 样本的二进制内容 : 开始的部分都是 00 00 00 方便阅读 ;

在这里插入图片描述

这是使用 Adobe Audition 将上述 PCM 音频数据转为 WAV 格式后的音频数据二进制信息 :

在这里插入图片描述

WAV 文件格式分析 : WAV 文件是在 PCM 纯音频样本数据的基础上添加了 44 44 44 字节的文件头 ;

52 49 46 46 A8 BD 1F 00 57 41 56 45 66 6D 74 20 12 00 00 00 01 00 02 00 80 BB 00 00 00 EE 02 00 04 00 10 00 00 00 64 61 74 61 00 A8

  
 
  • 1

00 00 00 ~ 03 03 03 : 资源交换文件标志 ( RIFF ) , 52 49 46 46 , 固定写法 ;

在这里插入图片描述


04 04 04 ~ 07 07 07 : 从下个地址 ( 08 08 08 ) 开始到 WAV 文件结尾的总字节数 , A8 BD 1F 00 , 整个 WAV 文件的大小就是该数值 + 8 ;

整个 WAV 文件大小是 2,080,176 字节 ,
A8 BD 1F 00 使用十进制表示是 2,080,168 字节 ,
二者正好差了 8 8 8 字节 ;

该 int 字节计算公式 : P C M 音 频 样 本 总 字 节 数 + 44 − 8 \rm PCM 音频样本总字节数 + 44 - 8 PCM+448

在这里插入图片描述


08 08 08 ~ 11 11 11 : WAVE 文件标志 , 57 41 56 45 , 是 WAVE 四个字母的 ASCII 码 , 固定写法 ;

在这里插入图片描述


12 12 12 ~ 15 15 15 : 波形格式标志 , 66 6D 74 20 , 一般都是 fmt , 其中 0x20 对应的字符是空格 ;

在这里插入图片描述


16 16 16 ~ 19 19 19 : 过渡字节 , 12 00 00 00 , 不确定 , 有的时候是 10 00 00 00 ;

在这里插入图片描述


20 20 20 ~ 21 21 21 : 格式种类 , 01 00 , 1 时表示线性 PCM 编码 ;

在这里插入图片描述


22 22 22 ~ 23 23 23 : 通道数 , 02 00 , 1 表示单声道 , 2 表示立体声 ;

在这里插入图片描述


22 22 22 ~ 23 23 23 : 通道数 , 02 00 , 1 表示单声道 , 2 表示立体声 ;

在这里插入图片描述


24 24 24 ~ 27 27 27 : 采样频率 , 80 BB 00 00 , 48000 Hz ;

在这里插入图片描述


28 28 28 ~ 31 31 31 : 波形数据传输速率 , 即每秒中的字节数 , 00 EE 02 00 , 每秒传输 192000 字节 ;

计算公式 :

采 样 率 × 通 道 数 × 采 样 位 数 8 = 48000 × 2 × 16 8 = 192000 \cfrac{采样率 \times 通道数 \times 采样位数}{8} = \cfrac{48000 \times 2 \times 16}{8} = 192000 8××=848000×2×16=192000

采样位数是 16 16 16 位 , 1 1 1 字节 8 8 8 位 , 16 16 16 位是 2 2 2 字节 , 即每个采样 2 2 2 字节 ;

在这里插入图片描述


32 32 32 ~ 33 33 33 : 数据块调整长度 , 04 00 , 4 字节 ;

计算公式如下 : 通 道 数 × 样 本 数 据 位 数 8 = 2 × 16 8 = 4 \cfrac{通道数 \times 样本数据位数}{8} = \cfrac{2 \times 16}{8} = 4 8×=82×16=4

在这里插入图片描述


34 34 34 ~ 35 35 35 : 每个样本的数据位数 , 10 00 , 16 位 , 2 2 2 字节 ;

在这里插入图片描述


36 36 36 ~ 39 39 39 : 数据标记 , 64 61 74 61 , data 的 ASCII 码值 ;

这里注意该 WAV 文件在 36 ~ 37 位置插入了两个无意义的 00 字节 , 目前不清楚含义 , 暂时不用管 ;

在这里插入图片描述


40 40 40 ~ 43 43 43 : PCM 数据总长度, 单位 字节 , 00 A8 1F 00 , PCM 数据总长度为 2,074,624 字节 ;

在这里插入图片描述





在这里插入图片描述

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/117351966

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。