音频数据文件WAVE结构分析--Windows XP 启动.wav 文件头分析

 

Windows XP 启动.wav 文件头分析:

 

 

                       文件长度②                                                                       声道数 

格式标记"RIFF"                    WAVE           fmt                不定   WAV格式类别         采样频率     数据传输率③   

[                ]  [                ] [                 ] [                ]  [                ] [      ] [      ]  [                ] [                 ]

52 49 46 46 BC 7A 06 00 57 41 56 45 66 6D 74 20 10 00 00 00 01 00 02 00 22 56 00 00 88 58 01 00

  0   1  2   3   4   5   6   7   8  9 10  11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

 

         采样位数 

块调整值④       标记"data"  音频数据长度⑤  左                     

[       ]  [     ]  [               ] [                 ] [      ]  [      ] [      ] [      ]  [      ] [      ] [      ] [      ] 

04 00 10 00 64 61 74 61 98 7A 06 00 5E 00 00 00 F3 FF 00 00 05 00 00 00 FC FF 00 00 03 00 00 00...

32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 5758 59

 

 

注①:WAVE 文档的保存格式标准是RIFF

注②:文件长度= 文件实际长度- 8

注③:数据传输率= 声道数*采样频率*采样位数/8

注④:块调整值(每个采样需要的字节数)= 声道数*采样位数/8

注⑤:音频数据长度= 文件长度- 头长度

 

文件长度=67ABCH=424636,文件实际长度为424636+8=424644

采样频率22 56 00 5622H=22050(1000mS采集22050个点,两个波形点需要1/22.05=0.04535mS)

每次采样需要的字节数=2*16/8=4(1个通道要2个字节)

数据传输率(每秒所需字节数)15888H=88200=2*22050*16/8

音频数据长度=67A98H=424600(个字节)(212300个采样点)

 

一屏显示500个采样点,采样时间为500/22050=0.0226757s=22.6757ms

一屏显示300个采样点,采样时间为300/22050=0.0136054s=13.5054ms

 

单声道

一屏显示600个采样点,采样时间为600/22050=0.0272108s=27.2108ms

双声道

一屏显示600个采样点,采样时间为600/22050=0.0272108s=27.2108ms

 

 

音频数据量=采样频率* 声道数* 采样秒数*采样位数/8(字节)

采样秒数=音频数据长度*8/采样频率* 声道数*采样位数

424600*8/22050*2*16=4.81S

 

另外,如果采样位数为16位,则需要两个字节表示一个采样点,取值范围:0..65536,但表示范围为:-32768..32767,而16位波形数据用2个字节表示,范围为:0-65535,当读入F3 FF(65523)时,超过最大值32767,高位表示符号,所以读入后为-3 

 

以上是我对“Windows XP 启动.wav”文件头的详细分析,其它的WAVE格式文件结构和上面分析的一样,只是声道数如果是8位的则数据都是一个点一个点的存放,希望对需要对WAVE格式文件解码的朋友有所帮助。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值